Заметил такую особенность на Raspberry Pi 2, что если голосуешь за блок, а следующий блок находят уже через 20 секунд (или около того), то проголосовать не успеваешь и получаешь Revoked missed ticket.
Скорее всего такое случается не только с Raspberry (хотя у неё риск выше из-за домашнего интернета, там счёт идёт на миллисекунды отклика). В пулах тоже случаются пропуски, когда находят 2 блока с разницей в пару сек. Неприятно конечно, но ты почти ничего не теряешь (комиссии за транзакции теряешь), а вот PoW майнер твоего Блока потерял 20% награды за упущенный голос.
Майню PoS на VPS практически с момента запуска PoS на 4096-м блоке (даже раньше запустил), такой проблемы (тьфу-тьфу-тьфу) не заметил. Всего один билет revoked, и тот в самом начале, когда в сети было много нестабильности. Так что дело скорее всего действительно в домашнем инете. Potro, а айпишник белый? Входящий порт открыт?
А вот интересно... Как в пулах формируется максимальная цена для покупки билетов? Могут ли участники пула на нее влиять? Или пул тупо покупает по текущей цене, какой бы она ни была?
Ты сам выбираешь по какой цене купить билет. Автоматически: Code: dcrwallet --testnet --enablestakemining --ticketmaxprice=8 --ticketaddress=TckvkAyiUcxC4F9Qje9JBaCQqCDNisBf1Yr Вручную: Code: dcrctl --testnet --wallet purchaseticket "default" 8 1 TckvkAyiUcxC4F9Qje9JBaCQqCDNisBf1Yr , где 8 - максимальная цена, а "TckvkAyiUcxC4F9Qje9JBaCQqCDNisBf1Yr" - твой адрес в пуле. Принцип работы пулов абсолютно такой же, как и "холодного" / "горячего" кошельков. В одном кошельке ты хранишь все свои деньги, он всегда залочен и оффлайн. Используешь его только для покупки новых билетов. А второй кошелек всегда с балансом 0 и всегда разлочен (в пуле или не в пуле, не важно), онлайн 24 / 7. На него ты делегируешь право отдать голос. Деньги придут на твой первый офлайн кошелек. PS. Я на этой неделе запущу PoS-пул и напишу подробную инструкцию на русском языке.
Такой вопрос. Ну вот цена билета упала и мой кошелёк накупил билетов. Статус Immature они когда получат? Поздно уже комиссию увеличивать? Гарантирует ли (см.скриншот) покупку билетов?
Да, поздно. Твои билеты сейчас в очереди на покупку (mempool), который сейчас насчитывает 4000 билетов: https://dcrstats.com/ В каждый блок включается максимум 20 билетов, только эти становятся immature (а через 256 блоков сами превращаются в live и участвуют в лотерее). До изменения цены билета (которая очевидно возрастет) осталось 74 блока, то есть из 4000 в мемпуле статус immature получат еще только 74 * 20 = 1480 билетов. Деньги за остальные билеты будут возвращены владельцам за вычетом комиссии на транзакции (любые транзакции всегда оплачиваются). То есть будет даже незначительная потеря денег. Хотя конечно хотя бы один проголосовавший билет перекрывает стоимость десятков/сотен пропущенных / недокупленных, тк награда за голос 1.8 DCR, а транзакции по 0.01 - 0.075 dcr
Спасибо, как всегда исчерпывающий ответ Позволю себе еще вопрос тогда. Заметил, что значение "ownmempooltix" в выхлопе команды Code: ./dcrctl --wallet getstakeinfo не бывает больше 6. Это какое-то специальное ограничение, не больше 6 билетов в mempool от одного хоста?
Нет, такого ограничения нет. Вот мой результат прямо сейчас: Code: { "poolsize": 42345, "difficulty": 6.50133864, "allmempooltix": 3921, "ownmempooltix": 21, "immature": 34, .... }
Можно ли быть уверенным, что билеты будут куплены, если поставить комиссию Чуть больше средней? Как вообще узнать какие комиссии у билетов в очереди?
В идеальном мире конечно можно. Комиссии идут только в награду PoW-майнеру нашедшему блок. И этот майнер может включить максимум 20 билетов в свой блок. Конечно же он хочет включать билеты с самыми высокими комиссиями (например по 0.1 dcr), чем какой-то мусор с комиссией 0.00125. В реальности - нельзя. Это криво работает и с самой низкой комиссией у тебя шансы примерно столь же случайные, как и с высокой. Когда-нибудь это должны починить, но то, что я вижу в блок экслорере - рандом какой-то с разными комиссиями. Я пока что всегда использую комиссию 0.011 - результат вполне приемлемый даже в такие пиковые дни как сегодня.
Хм... Значит как-то странно мой кошель покупает билеты: immature растет, а ownmempooltix = 6. Возможно, покупка новых просто совпадает с возвращением цены+награды за ранее сыгравшие билеты, поэтому такой эффект... А про какой эксплорер речь, где можно им побаловаться? P.S. В версии 0.1.0 вроде были какие-то фиксы на эту тему: Code: Fixed an issue with the mining transaction selection algorithm where it failed to sort stake transactions effectively. The codebase now defaults to no priority size spacing in the block, correctly sorts transactions by their stake importance, and then sub-sorts them by fees (113-2ba4225)
Что-то мне не досталось ничего с комиссией 0.03 А вам? P.S. тут пишут о подобных проблемах, что даже при 0.1 комиссии не купилось ни одного билета. https://forum.decred.org/threads/whats-is-going-on-in-price-of-ticket.3030/#post-18490 ???
Я вчера с комиссией 0.03 купил 23 билета. И еще 4 не успело созреть до повышения цены. Dyrk же говорил, что сейчас это чистый рандом, и комиссия мало что решает. Должны пофиксить, или уже пофиксили в версии 0.1.0. Ждем, пока сеть обновится, возможно станет лучше.
Посмотреть текущую: Code: dcrctl --wallet getticketfee Установить новую: Code: dcrctl --wallet setticketfee 0.02
Я правильно понял англоязычных друзей, https://forum.decred.org/threads/ticket-fee.3361/ что с версии 0.1.0 нужно комиссию за покупку билетов выставлять с коэффициентом 0.3 ? т.е. чтобы заплатить 0.03 нужно setticketfee=0.1 0.06..................setticketfee=0.2 ? А то может поэтому у меня билеты перестали закупаться, что ставил 0.03, а умноженное на коэф. получатось 0.009
В принципе правильно*, но в реальности может быть по-разному, нужно тестировать и понимать что означает комиссия за KB. Суть в том, что ты выставляешь теперь цену за килобайт транзакции, что логично, майнеры не могут мгновенно проводить гигабайты чужих транзакций при текущем уровне развития интернета. А если лет через 5-10 технологии такое позволят, то можно легко при помощи PoS-голосования на референдуме протолкнуть идею на увеличение размеров блока до 100-1000мб и тд и тем самым значительно уменьшить размер комиссий на мелкие транзакции вроде покупки билетов или перевода денег на биржу с одного адреса. Так вот, возвращаясь к "комиссии за килобайт". Стоит понимать, что перевод с одного адреса на другой - это минимально возможная транзакция (возможно те самые 300б, упомянутые разработчиком). Но чем больше "текста" участвует в твоей транзакции, тем тяжелее и дороже она будет. То есть если у тебя 100 адресов по 0.1dcr и ты хочешь купить билет за 9.95 dcr, то это будет транзакция с участием 100 адресов для покупки одного билета (то есть транзакция с переводом со 100 адресов на 1). Я не могу назвать конкретных чисел, но комиссия за этот билет будет значительно выше (скорее всего в десятки раз). Каких-то ужасных комиссий тут ожидать не стоит, тем не менее важно понимать, что вы делаете. Если вы установите комиссию за 1кб = 0.5 dcr, то будьте готовы заплать 1.5 DCR комиссии за свою транзакцию размером в 3кб.
Это дикая недоработка. Пользователь должен абсолютно точно понимать сколько денег он тратит на комиссии. Надеюсь, что со временем это поправят.