Bitcoin Forum
May 28, 2024, 04:34:30 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Синтаксический сахар  (Read 1338 times)
amaclin (OP)
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 20, 2017, 10:09:58 AM
 #1

Залез тут в пул-реквесты биткойна и охуел мальца
Я, конечно, понимаю, язык си++ совершенствуется и улучшается...

Но я нихера не понимаю.
Зачем менять шило на мыло?

Возьмем коммит
https://github.com/bitcoin/bitcoin/pull/9557/commits/0eb2e5c1a4a8ef4a45c6e590eab6e87527405025

Давайте бля, везде конструкцию char(0) заменим на более православную static_cast<char>(0)
Это вам так код напичканный скобочками и служебными словами читать проще стало?
или в компиляторе что-то поменялось? Ребяты, я уж лучше напишу по рабоче-крестьянски '\0'

И будет код работать хоть в си, хоть в си++11, хоть в си++99

kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 20, 2017, 11:12:18 AM
 #2

Случайно не это ищешь?
https://github.com/bitcoin/bitcoin/releases/tag/v0.1.5

или
https://github.com/bitcoin/bitcoin/tree/e071a3f6c06f41068ad17134189a4ac3073ef76b

OpenTrade - Open Source Cryptocurrency Exchange
amaclin (OP)
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 20, 2017, 11:19:41 AM
 #3

Не, а зачем?
Я вообще ничего конкретного не искал, просто посмотрел чем биткойн-девелоперы заняты

Вот здесь человек нашел в коде четыре точки-с-запятой лишние и убрал.
https://github.com/bitcoin/bitcoin/pull/9556
Карл, это охуеть как круто. Ради этого стоило жить. Чтобы убрать четыре точки-с-запятой.

А сорцы древнего биткойна я немного смотрел. Вот отсюда скачивал:
http://www.bitcointrading.com/forum/bitcoin-clients/original-bitcoin-source-code-archives/
Но тебе за ссылки тоже спасибо
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 20, 2017, 11:38:29 AM
 #4

Ну народ хочет в историю войти ))

Мне кстати один крупный работодатель говорил лет пять назад еще, что одним из критериев отбора для него является непустой профиль на гитхабе и участие не только в своих пректах...
Я тогда про гитхаб вроде впервые и услышал.

Так-то бы разобраться как туда коммитить, я бы тоже поправил gettransaction, чтобы оно не только транзы из кошелька видело.

OpenTrade - Open Source Cryptocurrency Exchange
amaclin (OP)
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 20, 2017, 11:52:32 AM
 #5

Так-то бы разобраться как туда коммитить, я бы тоже поправил gettransaction, чтобы оно не только транзы из кошелька видело.
а оно разве не видит? -txindex=1 спасет гиганта мысли
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 20, 2017, 11:59:09 AM
 #6

Так-то бы разобраться как туда коммитить, я бы тоже поправил gettransaction, чтобы оно не только транзы из кошелька видело.
а оно разве не видит? -txindex=1 спасет гиганта мысли

Круто!
А я грешным делом сначала вызывал getrawtransaction а потом decoderawtransaction... А оно вон оно чо михалыч )))

OpenTrade - Open Source Cryptocurrency Exchange
amaclin (OP)
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 20, 2017, 12:15:03 PM
 #7

Круто!
А я грешным делом сначала вызывал getrawtransaction а потом decoderawtransaction... А оно вон оно чо михалыч )))

Не в этом дело. Клиент не хранит (если не указать -txindex=1) данные о полностью потраченных
транзакциях. Ибо если транзакция потрачена - это ничем не отличается от того, что её нет.
Конечно, для всяких анализов и блок-эксплореров надо индексировать все транзакции. Ну вот этот ключик в помощь
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 20, 2017, 12:25:10 PM
 #8

Круто!
А я грешным делом сначала вызывал getrawtransaction а потом decoderawtransaction... А оно вон оно чо михалыч )))

Не в этом дело. Клиент не хранит (если не указать -txindex=1) данные о полностью потраченных
транзакциях. Ибо если транзакция потрачена - это ничем не отличается от того, что её нет.
Конечно, для всяких анализов и блок-эксплореров надо индексировать все транзакции. Ну вот этот ключик в помощь

В смысле не хранит в отдельной базе? А с этим ключем все транзакции записываются в отдельную базу?
В блокчейне же все транзакции есть и у синхронизированного клиента есть весь блокчейн, а значит и все транзакции. Зачем городить еще одну отдельную базу, если все можно сделать без нее?

OpenTrade - Open Source Cryptocurrency Exchange
in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
January 20, 2017, 12:37:07 PM
 #9

В смысле не хранит в отдельной базе? А с этим ключем все транзакции записываются в отдельную базу?

Создаётся дополнительный индекс, который позволяет искать транзакцию в базе по её ID.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 20, 2017, 12:37:33 PM
 #10

А, кажись дошло.
Непотраченные транзакции хранятся в отдельной базе и их все видят функцией getrawtransaction которая быстро ищет по этой базе
Потраченные транзакции хранятся где-то в недрах блокчейна, откуда их вытащить можно только парсингом всех блоков. Чтобы их можно было вытаскивать быстрее, придумали флаг txindex. Правильно?

OpenTrade - Open Source Cryptocurrency Exchange
amaclin (OP)
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 20, 2017, 12:47:25 PM
 #11

А, кажись дошло.
Непотраченные транзакции хранятся в отдельной базе и их все видят функцией getrawtransaction которая быстро ищет по этой базе
Потраченные транзакции хранятся где-то в недрах блокчейна, откуда
их вытащить можно только парсингом всех блоков. Чтобы их можно было вытаскивать быстрее, придумали флаг txindex. Правильно?
в целом да.
in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
January 20, 2017, 12:50:01 PM
 #12

Непотраченные транзакции хранятся в отдельной базе и их все видят функцией getrawtransaction которая быстро ищет по этой базе

Не совсем так Smiley Все транзакции хранятся в одной базе - файлах blkxxxxx.dat

Насколько я понял, по умолчанию индексируются только coinbase-транзакции и свои транзакции, поэтому они доступны команде getrawtransaction.

При включении параметра -txindex=1 кошель индексирует все транзакции - и свои, и чужие.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!