Are you using some really damaged HDD? Or a USB 2.0 external drive? Maybe a network drive over a 100BASE-T? It sounds painfully slow and nothing close to what I have experienced. I built Armory's DB in 4-5 hours on an old HDD (160GB sata 1) a couple months ago. Takes shy of 1h30 on my SSD RAID0 currently.
|
|
|
For me it had been building the database for 14 hours until it finally worked.
Glad to hear it went well, although it wasnt database building for that long per say. Most of it was spent downloading the blockchain. Database building is around 1-2h with the current blockchain size.
|
|
|
I noticed a problem with 0.91.2 - I had recently re-installed everything on my computer and rebuilt everything. With Armory, I had loaded the first two wallets that I have and processed the block chain until the balances were shown.
I added a fourth wallet and Armory has sat at "Scanning Transaction History" and "100%" for almost an hour. The last entries in the log are: INFO - 1402836130: (..\BlockUtils.cpp:4567) Scanning Wallet #1 from height 0 -INFO - 1402836131: (..\BlockUtils.cpp:4567) Scanning Wallet #2 from height 0 -INFO - 1402836138: (..\BlockUtils.cpp:4567) Scanning Wallet #3 from height 0 -INFO - 1402836145: (..\BlockUtils.cpp:4567) Scanning Wallet #4 from height 0 -INFO - 1402836146: (..\BlockUtils.cpp:4888) Saving wallet history to DB -INFO - 1402836146: (..\BlockUtils.cpp:5920) Enabling zero-conf tracking (lite) -DEBUG - 1402836657: (..\BlockUtils.cpp:5599) Organizing chain -DEBUG - 1402836657: (..\BlockUtils.cpp:5723) Done organizing chain -DEBUG - 1402836657: (..\BlockUtils.cpp:5599) Organizing chain -DEBUG - 1402836657: (..\BlockUtils.cpp:5723) Done organizing chain -INFO - 1402836657: (..\BlockUtils.cpp:5143) Added new blocks to memory pool: 2 -INFO - 1402836657: (..\BlockUtils.cpp:4888) Saving wallet history to DB
I am using a Lenovo V570 laptop with Win 7 Home x64. Cpu 25% utilized and 5Gb RAM free. If I restart Armory, it states 18 minutes to scan transactions.
Is there are problem in using Bitcoin Core? or something else going on? Thanks,
https://bitcoinarmory.com:8443Make a ticket and attach your log file (the whole thing) No, that won't help. Armory is using mlock to help store your keys securely. mlock() locks part of the calling process's virtual address space into RAM, preventing that memory from being paged to the swap area The goal here is that your unencrypted private keys are never written to disk (swap) where they could more easily be recovered. Thats the gist of it, but it isnt limited to unencrypted private key. Pretty much anything crypto (public keys included) is held in mlock'ed memory.
|
|
|
Hi,
I have a problem:
1- I hibernate the laptop with Armory opened. 2- I back from hibernate. 3- Armory doesnt syncronize. (To syncronize again I need to restart Armory).
OS: Ubuntu 64
Nothing can be done about this. Some of Armory's stack is forced in the RAM through mlock. Hibernation copies the entire RAM into the swap partition. Since that would defeat mlock's purpose, mlock'ed memory is not copied imaged in on hibernation. Armory won't be able to recover from that.
|
|
|
I would be suspicious of your install. I use Avast! and I have never gotten any warnings for either Armory or Bitcoin-Qt. Make sure you are installing from official sites.
It was not the install that gave the false positive, but the blockchain data. And I have only heard about Microsofts own antivirus falsely detecting it. Either avast and the other don't use exactly the same signature, or they do not scan the blockchain data files (scanning them makes no sense anyway, since they are not executed). We've received reports of other AVs flagging the blockchain or our DB copy of it over the past few months. All false positives obviously, but this isn't limited to MS' BitDefender.
|
|
|
yeah the problem is when goes armory to discard the tx? As the next tx for the same address will spend the same outputs. How can we discard the previous spent outputs, to be submitted a new time? At this moment the one and only possibility I have is to restart the service then the spended outputs are getting "unspent" again, is there a way to mark them as unspent in a "manual / programmatic" way?
There is currently no code in Armory core for the user to cherry pick ZC transactions in the backend container. You either wipe the entire container or use it as a whole. Granted it would be very easy to add, Im not sure that would fix your issue. Bitcoin Core will not let you broadcast a transaction that spends a UTXO already consumed by a ZC transaction. You'd have to restart Bitcoin Core or somehow clear its ZC pool.
|
|
|
Hi Folks!
Question for Armoryd / Armoryengine
I noticed that some transactions are not getting to mainbranch, and for this reason the Tx never gets confirmed. At this moment I dont know why it happens. Over 25.000 transactions on Testnet and maybe 50 cases on which happens the mainbranch issue.
Is there a way to detect the "scrap" items on armory core? At this moment the one and only working solution I got is to restart the watching only wallet service. After restarting armory service the TxId just dissapears and I mark them as "Scrap" in database and reissue the Tx creating a new one.
Is there a way to ask Armory core if the transaction is really a "scrap" item? And how can it happen that the Tx does not get into the Mainbranch? (all tests are done over testnet so far)
Best regards
Submitting a Tx doesn't guarantee it will be mined, even if the network accepts it as valid. Im not sure the concept of "scrap" is part of Armory. What you should be doing is monitoring the number on confirmations of your broadcasted transactions against ("current top block" - "block the tx was broadcasted at"). This is how you will know whether your txn are getting mined or not.
|
|
|
Armory data files are separate from binaries:
Windows: datadir: C:\Users\*myusername*\AppData\Roaming\Armory binaries: C:\Program Files (x86)\Armory
Linux: datadir: ~/.armory binaries: /usr/lib/armory
The Armory installer affects binaries only.
Regardless, whether you plan to install, reinstall or not, you should secure backups of your wallets.
As for your direct question, you can simply run the new installer over an existing installation.
|
|
|
I imported a watchonlywalllet and now Armory 0.9.12 on Mac OS 10.9.3 keeps crashing on startup. Cant use it, what can I do? Switch back to 0.9.11 ?!
-INFO - 1402126750: (BlockUtils.cpp:4527) Starting scan from block height: 0 -ERROR - 1402126750: (leveldb_wrapper.cpp:1787) Invalid txIndex at height 0 index 269 -ERROR - 1402126750: (StoredBlockObj.cpp:1082) Cannot get tx copy, because don't have full StoredTx!
Start in offline mode, do a Help -> Rebuild and Rescan Database, then restart in online mode. Would such a plugin directory be located in an only-root-writable location by default, e.g. /usr/lib/armory/plugins or \Program Files (x86)\Armory\plugins? That's the idea
|
|
|
Hi
Today I tried to send a payment but am getting the error "SelectCoins returned a list of size zero. This is problematic and probably not your fault.". I've tried restarting Armory but the error persists.
I was on Version 0.9 and I have just installed Version 0.91.2. I have not tried it with 0.91.2 yet.
Make a ticket, add in your log files.
|
|
|
Only coinbase transactions are subject to an enforced confirmation delay (100 or 120, not so sure anymore). Armory depends on BitcoinQt so it bends by its rules. You can even spend 0 confirmation transactions with Armory, unless you force it to ignore ZC.
While transactions will require a depth of 6 blocks to be displayed as confirmed in the UI, Armory won't prevent you from creating a transactions with low confirmation UTXO. Generally, the coin selection algorithm prefers older UTXO, so unless you have very few available outputs in your wallet, you will most likely never spend off of a low conf transactions.
|
|
|
So I should turn it off for it to work or no? And how do I moniter BitcoinQt's traffic? Wireshark?
It isnt necessary turn off bitcoin auto management in Armory as long as you have all your Bitcoin settings set in the bitcoin.conf (as opposed to passing them as command line arguments). As for traffic, since you're on Windows, you can see what IPs each process connects to through Windows' Resource Monitor, in the Network tab. Isn't TOR sock5 port is 9150 instead of 9050 since they changed it? Not too sure about this anymore. It's something like the Tor bundle uses 9150 and the Tor daemon uses 9050.
|
|
|
Well maybe once per 3 transactions I get a stuck one. Meaning the transaction is no where to be found on blockchain.info and stays at 0 confirmations in the client for ever. Clear All Unconfirmed works great and then it goes out just fine but I thought you might find it useful to know that it happens quite often. That's with the latest version (was same with older versions actually) on Linux.
Have you set your minimum fee to 0? And how fast do you emit these transactions? No, the fee is the default one. I'm not sure how I can measure how fast I emit them. I just send them. I'll submit bug report next time it happens I mean do you chain transactions in a bulk or do you send like one a day?
|
|
|
Alan loves to respond to these types of posts with in-depth answers, including nicely laid out paragraphs, punctuation, proper grammar, bold and underlined key points, COLORS, and sometimes even pictures. So I'm gonna beat him to the bush with a half assed answer just to frustrate him =P http://en.wikipedia.org/wiki/Elliptic_Curve_DSAThis is the basic math behind the EC signing scheme. Somewhere there, they give you the formula to get a public key from a private key, something like: dA * G = QA where dA is the private key, G is the base point of your curve, and QA is the resulting point on the curve. I wont go into the modulo part or the scalar vs curve point part. Im too lazy, and it's funny portraying Alan torn by this dilemma: knowing all of these omissions and inconsistencies are just baits, but being unable to resist his inner smartass. So, there's some math property which names I forgot that let's you do this: dA * k * G = k * dA * G where k is some random number with the same properties as a private key. This means if you have a private key that is something like dZ = dA * dB, you could do something like: QZ = dZ * G = dA * dB * G and dA * G = QA dB * QA = dB * dA * G = dA * dB * G = QZ Put in words it means that for a given private/public key pair, you can multiply both the private and public key by the same scalar and achieve a new pair of matching private/public keys. So to create a chain of public and private keys, you only need to create a chain of scalars, multiply your original (root) private key by these scalar, do the same with your (root) public key and get the matching public keys for all those private keys without having to expose them to the online machine. I hope this reply answered just enough for you to want to know more, and for Alan to get fuming and hissing!
|
|
|
When you get in a state that crashes Armory, try to start it with the --offline switch. If it starts, then what you are experiencing is some sort of recurrent DB corruption. Do you use an anti virus or some sort of system snapshot recovery? What about HDD and RAM health?
|
|
|
Well maybe once per 3 transactions I get a stuck one. Meaning the transaction is no where to be found on blockchain.info and stays at 0 confirmations in the client for ever. Clear All Unconfirmed works great and then it goes out just fine but I thought you might find it useful to know that it happens quite often. That's with the latest version (was same with older versions actually) on Linux.
Have you set your minimum fee to 0? And how fast do you emit these transactions?
|
|
|
|