Pages:
Author

Topic: . - page 3. (Read 39124 times)

donator
Activity: 1274
Merit: 1060
GetMonero.org / MyMonero.com
April 15, 2013, 12:00:25 AM
I'd like to re-open https://github.com/znort987/blockparser/issues/1 - I'm getting the same problem when running an allBalances yesterday. Alternatively, if someone could do an allBalances for me as a precursor to solving the problem that would be greatly appreciated.
newbie
Activity: 49
Merit: 0
April 06, 2013, 07:33:46 PM
When I didn't have any blockchain files it would crash on unmapping somewhere in cleanMaps, but with blockchain data it dies on:

Code:
while(i!=e) totalSize += (i++)->size;

in initHashtables.

Code:
ovrlrdq@thedarkcitadel:/tmp/blockparser$ ./parser stats

info: starting command "simpleStats"
Segmentation fault (core dumped)
ovrlrdq@thedarkcitadel:/tmp/blockparser$ gdb parser core
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
...
Reading symbols from /tmp/blockparser/parser...done.
[New LWP 20039]

warning: Can't read pathname for load map: Input/output error.

warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fffb238a000
Core was generated by `./parser stats'.
Program terminated with signal 11, Segmentation fault.
#0  0x000000000044f2d3 in google::dense_hashtable, unsigned char const*, Hash256Hasher, google::dense_hash_map > >::SelectKey, google::dense_hash_map > >::SetKey, Hash256Equal, google::libc_allocator_with_realloc > >::dense_hashtable(google::dense_hashtable, unsigned char const*, Hash256Hasher, google::dense_hash_map > >::SelectKey, google::dense_hash_map > >::SetKey, Hash256Equal, google::libc_allocator_with_realloc > > const&, unsigned long) ()
(gdb) bt
#0  0x000000000044f2d3 in google::dense_hashtable, unsigned char const*, Hash256Hasher, google::dense_hash_map > >::SelectKey, google::dense_hash_map > >::SetKey, Hash256Equal, google::libc_allocator_with_realloc > >::dense_hashtable(google::dense_hashtable, unsigned char const*, Hash256Hasher, google::dense_hash_map > >::SelectKey, google::dense_hash_map > >::SetKey, Hash256Equal, google::libc_allocator_with_realloc > > const&, unsigned long) ()
#1  0x000000000044b8fc in initHashtables() ()
#2  0x0000000000404c4c in main ()


Valgrind output:

Code:
info: starting command "simpleStats"
==22223== Invalid write of size 8
==22223==    at 0x44EA23: google::dense_hashtable, unsigned char const*, Hash256Hasher, google::dense_ha
sh_maphar const*> > >::SelectKey, google::dense_hash_map:pair > >::SetKey, Hash256Equal, google::libc_allocator_with_reallocd char const*> > >::dense_hashtable(google::dense_hashtable, unsigned char const*, Hash256Hasher, google
::dense_hash_mapunsigned char const*> > >::SelectKey, google::dense_hash_mapalloc > >::SetKey, Hash256Equal, google::libc_allocator_with_realloct, unsigned char const*> > > const&, unsigned long) (in /tmp/blockparser/parser)
==22223==    by 0x44B76D: initHashtables() (in /tmp/blockparser/parser)
==22223==    by 0x404C4B: main (in /tmp/blockparser/parser)
==22223==  Address 0x10 is not stack'd, malloc'd or (recently) free'd
==22223==
==22223==
==22223== Process terminating with default action of signal 11 (SIGSEGV): dumping core
==22223==  Access not within mapped region at address 0x10
==22223==    at 0x44EA23: google::dense_hashtable, unsigned char const*, Hash256Hasher, google::dense_ha
sh_maphar const*> > >::SelectKey, google::dense_hash_map:pair > >::SetKey, Hash256Equal, google::libc_allocator_with_reallocd char const*> > >::dense_hashtable(google::dense_hashtable, unsigned char const*, Hash256Hasher, google
::dense_hash_mapunsigned char const*> > >::SelectKey, google::dense_hash_mapalloc > >::SetKey, Hash256Equal, google::libc_allocator_with_realloct, unsigned char const*> > > const&, unsigned long) (in /tmp/blockparser/parser)
==22223==    by 0x44B76D: initHashtables() (in /tmp/blockparser/parser)
==22223==    by 0x404C4B: main (in /tmp/blockparser/parser)
newbie
Activity: 49
Merit: 0
April 05, 2013, 10:18:10 PM
ext3, and pretty sure it's crashing from a null ptr. Always dies once you try to operate on the last element in vecMap.
newbie
Activity: 49
Merit: 0
April 05, 2013, 06:01:43 PM
Compiles fine but then segafaults.

There's logic issues with the mmap'ing.
mrb
legendary
Activity: 1512
Merit: 1028
April 04, 2013, 08:02:57 PM
If reliability is main concern, you can use RAID1 (preferably staggered in such a way that two disk in each array have different wear level). Also, larger disks will last longer before wearing.
I wish the life would be so simple. The flash storage sector is so full of cheats and fly-by-nights, that the total cost of building a reliable and long lasting Unix server simply approaches or exceeds the cost of an equivalent mainframe solution.

Self-healing (ZFS) can make unreliable flash storage reliable.
legendary
Activity: 2128
Merit: 1073
April 03, 2013, 04:04:51 PM
If reliability is main concern, you can use RAID1 (preferably staggered in such a way that two disk in each array have different wear level). Also, larger disks will last longer before wearing.
I wish the life would be so simple. The flash storage sector is so full of cheats and fly-by-nights, that the total cost of building a reliable and long lasting Unix server simply approaches or exceeds the cost of an equivalent mainframe solution. C.f. the recent trend of using supercapacitors to power hidden write-back caches. Combined with the various wear-leveling cheats it produces failures that are extremely hard to locate. Consider this trivialized example of a circular on-disk-buffer of 3 blocks:

1 2 3
4 5 6
7 8 9

If you read it after simple reboot you'll get "7 8 9". If you read it after proper power down with super-cap discharge, you'll get "7 5 9" or "7 2 9" or various other combinations. The culprit really isn't flash technology, it is nearly always firmware problem due to its extreme complexity and trivialized testing.

There are various options available on the market, but they aren't openly advertised because they tend to use some technologies that IBM has either patented or keeps a tight contractual grip on the channel partners. e.g. SCSI disk drives with AS/400-like formatting with 520 bytes per block for 512 bytes of user data per block.

On the other hand we've never suffered a bug in a true RAM drive, possibly because of the extreme simplicity of the required firmware.

I apologise for contributing to a derailment of this thread.
jr. member
Activity: 42
Merit: 11
April 03, 2013, 01:48:42 PM
If reliability is main concern, you can use RAID1 (preferably staggered in such a way that two disk in each array have different wear level). Also, larger disks will last longer before wearing.
legendary
Activity: 2128
Merit: 1073
April 03, 2013, 12:54:58 PM
2112, your friends' best bet is http://www.ramsan.com/products/rackmount-ram-storage-line
But price can be quite high.
Thank you very much. Those are primarily aimed at the "IOPS desperation" market niche. We aren't there yet. I would call our niche "rapid reboot & real reliability" for write-ahead-logging internal drive. The flash EEPROM storage is so full of misinformation about reliability that its is nearly impossible to make sensible product choices.
jr. member
Activity: 42
Merit: 11
April 03, 2013, 03:23:31 AM
2112, your friends' best bet is http://www.ramsan.com/products/rackmount-ram-storage-line
But price can be quite high.
hero member
Activity: 767
Merit: 500
April 03, 2013, 02:55:07 AM
You can try this:

[snip]

ought to  give you what you want.

Sounds good - I'll give that a go.

Cheers

Will
hero member
Activity: 767
Merit: 500
April 02, 2013, 07:42:16 PM
blockchain.info satoshidice profit/loss seems to be a bit flaky at the moment - so right now to work out my profit/loss I'm exporting my transactions then pulling tx info from blockchain.info for each of my transactions and working out if it contains a 1dice* address then assuming that's a bet and adding/removing from the total.

it would be nice to do this using your tool - so supplied with a list of all my addresses, parse blockchain for tx with either { my address } -> { 1dice* } or { 1dice* } -> { my address }

Is this possible?

Will
member
Activity: 75
Merit: 10
March 27, 2013, 07:10:57 AM
Thanks. gcc now at  4.6.3.

However, now receive -

Quote
# make
lnk -- parser
.objs/util.o: In function `decompressPublicKey(unsigned char*, unsigned char const*)':
util.cpp:(.text+0x804): undefined reference to `EC_KEY_new_by_curve_name'
util.cpp:(.text+0x820): undefined reference to `o2i_ECPublicKey'
util.cpp:(.text+0x834): undefined reference to `EC_KEY_set_conv_form'
util.cpp:(.text+0x843): undefined reference to `i2o_ECPublicKey'
util.cpp:(.text+0x84f): undefined reference to `EC_KEY_free'
util.cpp:(.text+0x896): undefined reference to `EC_KEY_free'
.objs/util.o: In function `compressPublicKey(unsigned char*, unsigned char const*)':
util.cpp:(.text+0x8b4): undefined reference to `EC_KEY_new_by_curve_name'
util.cpp:(.text+0x8d0): undefined reference to `o2i_ECPublicKey'
util.cpp:(.text+0x8e4): undefined reference to `EC_KEY_set_conv_form'
util.cpp:(.text+0x8f3): undefined reference to `i2o_ECPublicKey'
util.cpp:(.text+0x8ff): undefined reference to `EC_KEY_free'
util.cpp:(.text+0x946): undefined reference to `EC_KEY_free'
collect2: ld returned 1 exit status
make: *** [parser] Error 1

I believe I do have openssl compiled correctly with ECDSA.

Is this worth pursuing?

member
Activity: 75
Merit: 10
March 24, 2013, 05:23:22 AM
I know this is developed under Ubuntu, but it would be nice to have working on RH type distros.

I have openssl with ecdsa working, but blockparser won't compile -

Quote
# make
c++ -- cb/dumpTX.cpp
cb/dumpTX.cpp: In member function 'virtual int DumpTX::init(int, const char**)':
cb/dumpTX.cpp:80: error: expected initializer before ':' token
cb/dumpTX.cpp:84: error: expected primary-expression before 'return'
cb/dumpTX.cpp:84: error: expected ';' before 'return'
cb/dumpTX.cpp:84: error: expected primary-expression before 'return'
cb/dumpTX.cpp:84: error: expected ')' before 'return'
make: *** [.objs/dumpTX.o] Error 1

Is this something worth pursuing further?
legendary
Activity: 1708
Merit: 1020
March 19, 2013, 03:25:53 AM
Would it be possible to dig out what percentage of coins have ever been moved for any 2016 block period?

I would be interested in how many of the early coins have never been moved.

edit: ok, just found your post: https://bitcointalksearch.org/topic/z-98641  [2 Million unspent...]
member
Activity: 100
Merit: 16
March 18, 2013, 03:01:28 AM
This is nice. One feature I would like to see is the creation of a table that stores public key to balance pairs, and keeps updating from time to time. This way you can quickly look up the balance of an address. If I have time, I may use this code to do this, and I'll add it to my wallet parser: https://github.com/piratelinux/cwallet
legendary
Activity: 2128
Merit: 1073
March 12, 2013, 05:25:34 AM
http://www.ddrdrive.com - it was designed for ZFS ZIL, and the RAM is backed by SLC NAND flash. It was priced $2000 when it launched ~3 years ago. The price has probably gone down a lot, but it is still way more than 10x the price per GB than system's RAM.

Part of the reason prices are so high is because there are so few vendors, so there is practically no competition.
Thanks. Unfortunately this is still a flash drive with RAM cache and still susceptible to write amplification abuse. Thus far we haven't found anything better than discontinued ACARD ANS-9010 (64GB with battery backup) and some other custom-made solutions.
mrb
legendary
Activity: 1512
Merit: 1028
March 12, 2013, 04:29:11 AM
But don't buy hardware ram drives. They are all horribly overpriced, as in 10x more expensive per GB, or more.
Please pardon me for jumping in, but please post the links to those overpriced hardware RAM drives. My friends in IT operations are on the market and have hard time sourcing devices that don't wear out are reasonably non-volatile and can survice reboot/reconfig/reload of the OS.

http://www.ddrdrive.com - it was designed for ZFS ZIL, and the RAM is backed by SLC NAND flash. It was priced $2000 when it launched ~3 years ago. The price has probably gone down a lot, but it is still way more than 10x the price per GB than system's RAM.

Part of the reason prices are so high is because there are so few vendors, so there is practically no competition.
legendary
Activity: 2128
Merit: 1073
March 11, 2013, 09:10:26 PM
But don't buy hardware ram drives. They are all horribly overpriced, as in 10x more expensive per GB, or more.
Please pardon me for jumping in, but please post the links to those overpriced hardware RAM drives. My friends in IT operations are on the market and have hard time sourcing devices that don't wear out are reasonably non-volatile and can survice reboot/reconfig/reload of the OS.
legendary
Activity: 3416
Merit: 1912
The Concierge of Crypto
March 11, 2013, 08:51:13 PM
The hardware ram drives I know use old DDR2 memory. Maybe there are new ones that are horribly overpriced. Or I'll look around to see if someone has made one. The one I know used to use a SATA cable to emulate a hard drive. Real ram inside the motherboard is obviously going to work a lot faster.
mrb
legendary
Activity: 1512
Merit: 1028
March 11, 2013, 08:23:37 PM
I'm tempted to buy a machine with 32 Gigs of RAM. ... ... Maybe those so called "ram drives" (hardware implemented) might be useful.

Do it, 32GB only costs $160, assuming you already have a machine with a motherboard supporting 4 x 8GB DDR3.
But don't buy hardware ram drives. They are all horribly overpriced, as in 10x more expensive per GB, or more.
Pages:
Jump to: