-
cerbere
greetings, where can I find information about what a daemon rpc error code 0 means ? I found all others in
github.com/monero-project/monero/bl…c/rpc/core_rpc_server_error_codes.h but cannot spot the error 0, I get it when sending a flush_txpool if that helps.
-
moneromooo
0 would be no error.
-
cerbere
interesting
-
cerbere
is that intended ? I may obviously misunderstand something, but usually if there is no error I receive a json rpc answer with a result key, it's the only case I encounter where a success would yield a {'error': {'code': 0, 'message': ''}, 'id': 0, 'jsonrpc': '2.0'} rpc answer
-
moneromooo
Then something might be failing to set an error code.
-
moneromooo
File a bug with the JSON you're sending.
-
cerbere
will do, thanks
-
moneromooo
Longstanding confusion between error code and status error reporting. I'll PR a patch soon.
-
kayront
-
kayront
:mindblowngif:
-
cerbere
that was quick @moneromoo ! thanks
-
luigi1111w
.merges
-
xmr-pr
6877 6959 6986 7000 7185 7242 7252 7265 7270 7273 7275 7284 7288 7294 7308 7309 7311 7312 7313 7319 7325 7331 7332 7333 7339 7340 7341 7343 7349 7351 7352 7355 7361 7362 7371
-
alphabettica
Guys if one of the structures inside the transaction class was was changed, say we added an extra data variable in one of them, do we need to update the database version? What other stuff would have to be done to make everything ok
-
alphabettica
in a generic sense
-
alphabettica
would the code go back and add space for that data variable to every previous database entry for that structure?
-
moneromooo
In the general sense, no. The tx is stored as a bytestring.
-
alphabettica
Ok. But we would if we modified the existing elements?
-
moneromooo
You'd need to change serialization and presumably fork with updated validation rules. If this is for an altcoin, you would not need that though.
-
alphabettica
say if we changed a uint64 to a 32
-
alphabettica
so the db could still read the old values as 64
-
moneromooo
The tx is stored as a bytestring.
-
moneromooo
Now if you change something like height, you might want to alter the db to save space, but you would not *need* to.
-
moneromooo
In fact, we use 64 bits for height everywehre, but there's a MAX_BLOCK_NUMBER or so define that fits on 32 bits. So we do waste a bit.
-
alphabettica
But say if i've got a structure with a uint32 in there, and then change to 64. Wont reading the old values from the db read in the correct 32 and then 32 of junk?
-
luigi1111w
6877 conflicts moneromooo
-
moneromooo
fixed
-
pyu
on the recent CCS for 'perfect p2p protocol', wonder if can borrow some parts from libp2p (
github.com/libp2p).
-
cori
what's up
-
fluffydonkey[m]
<pyu "on the recent CCS for 'perfect p"> the C++ - Go interop isn't all that good
-
hank303
Does anyone here know why this
-
hank303
struct txin_to_key_public
-
hank303
{
-
hank303
uint64_t amount;
-
hank303
uint64_t relative_offset;
-
hank303
crypto::hash tx_hash;
-
hank303
BEGIN_SERIALIZE_OBJECT()
-
hank303
VARINT_FIELD(amount)
-
hank303
VARINT_FIELD(relative_offset)
-
hank303
FIELD(tx_hash)
-
hank303
END_SERIALIZE()
-
hank303
};
-
hank303
would be padded ?
-
hank303
It's a structure I made
-
hank303
whereas struct txin_to_key
-
hank303
{
-
hank303
uint64_t amount;
-
hank303
std::vector<uint64_t> key_offsets;
-
hank303
crypto::key_image k_image; // double spending protection
-
hank303
}
-
hank303
is not padded
-
hank303
I just have no idea what's going on... If I wrap it in a pragma pack (1) it works, but otherwise i have no luck
-
hank303
it's triggering this return
-
hank303
return !std::is_standard_layout<T>() || alignof(T) != 1;