elective-stereophonic
elective-stereophonic
Strange behavior and extreme long blocks singapore
Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Stable Nxt Client: Nxt 1.12.2

Author Topic: Strange behavior and extreme long blocks  (Read 4106 times)

TheCoinWizard

  • Hero Member
  • *****
  • Karma: +97/-55
  • Offline Offline
  • Posts: 614
  • Learn by questioning everything!
    • View Profile
Strange behavior and extreme long blocks
« on: July 13, 2015, 10:08:12 am »

Here are some notable glitches in the forging algorithm...
Which I think should be addressed.

Are there an unusually high number of long blocks recently, or am I imagining it? If so, can someone open a support ticket please?

Seems like the next block is not being forged...

That was strange... Block 463205
The about 8 forgers in row were unable to forge the block, and NXT-F9AF-P9FM-V73D-3P736 was able to forge it.

Seems to me the false transaction can still block forgers to create a valid block, so that the forger that knew about it can remove it and forge (aka steal) the block instead.

It happened again, now I got some proof...



Maybe that these first forgers are all under same control (or ) and they wait for the last one under their control to forge the block?

Anyone else noticed these behaviors?

@TheCoinWizard, one of those accounts is mine, and I did not intentionally not forge a block, (not idea how to do that actually) so not sure why my node didn't forge that block in question.

Yep, I have been in between it also, so it isn't that...
But it is easy not to forge a block, just Log out and stop forging, or pull the LAN cable of the node.

Can you elaborate which pattern you see? I have problems understanding which details on the screenshots you refer to. I have not spent much time on this site :-/

Maybe the changing forging order?

Right up you see the block height.
In the deterministic forging order you see that the first 6 in row have skipped forging as they can only forge a velid block when they have between 15 seconds and -15 seconds left.
Also note unconfirmed transaction 11991426886863693379.

The next picture you see that forger 7 in row, NXT-8MVA-XCVR-3JC9-2C7C3, was able to forge the block but skipped the noted transaction as it is still unconfirmed.

Here I suspected that the transaction blocked everyone from forging, as happened once before. Remember GLEFU?

It is happening again right now!!!

http://i.imgur.com/F7TDXKX.gif


http://i.imgur.com/DlGLVn8.gif


Block already 2300 seconds delayed!!
And with no pending transactions, strange...

Here it seems to be totally different, as there are no invalid unconfirmed transactions able to block forgers (or at least they don't show).
You see that forgers 1 to 16 in row have not been able to forge.
Also note Block height: 472203.

A bit later the whole forging order changed and resetted the counting as seen here

Now it changed to this?




Can anyone make sense out of this?

Same block height, only totally different order this time. This totally blew my mind.
Logged
Welcome to the After Nxt Calendar era...
Which started in the year 222 of the French Republic, Frost month, on the fifth day of the first week, better known as the 2456621th Julian day,
even better known as 24 November 2013 at 12:00:00 UTC.

jabo38

  • Sr. Member
  • ****
  • Karma: +40/-38
  • Offline Offline
  • Posts: 381
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #1 on: July 13, 2015, 10:25:08 am »

Don't want another GLEFU.

Good observation. This should be investigated more.
Logged
Never Enough Money

TheCoinWizard

  • Hero Member
  • *****
  • Karma: +97/-55
  • Offline Offline
  • Posts: 614
  • Learn by questioning everything!
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #2 on: July 13, 2015, 10:55:29 am »

Don't want another GLEFU.

Good observation. This should be investigated more.
The problem with the GLEFU incident is that only the generation of invalid transactions got fixed, and not the fact that these invalid transactions can block withhold a forger from generating a block. At least that is what I remember of the incident.
« Last Edit: July 13, 2015, 10:59:20 am by TheCoinWizard »
Logged
Welcome to the After Nxt Calendar era...
Which started in the year 222 of the French Republic, Frost month, on the fifth day of the first week, better known as the 2456621th Julian day,
even better known as 24 November 2013 at 12:00:00 UTC.

TheCoinWizard

  • Hero Member
  • *****
  • Karma: +97/-55
  • Offline Offline
  • Posts: 614
  • Learn by questioning everything!
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #3 on: July 13, 2015, 11:54:59 am »

The order shift happened again,

Extreme long block 472492 with 2000+ seconds was supposed to go to forging pool NXT-K5KL-23DJ-3XLK-22222...
than it recalculated and now it goes to NXT-8MVA-XCVR-3JC9-2C7C3

 ???
Logged
Welcome to the After Nxt Calendar era...
Which started in the year 222 of the French Republic, Frost month, on the fifth day of the first week, better known as the 2456621th Julian day,
even better known as 24 November 2013 at 12:00:00 UTC.

lurker10

  • Hero Member
  • *****
  • Karma: +168/-33
  • Offline Offline
  • Posts: 1334
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #4 on: July 13, 2015, 12:00:29 pm »

NXT-K5KL-23DJ-3XLK-22222 could be on its own fork.
Logged
Run a node - win a prize! "Lucky node" project jar: NXT-8F28-EDVE-LPPX-HY4E7

TheCoinWizard

  • Hero Member
  • *****
  • Karma: +97/-55
  • Offline Offline
  • Posts: 614
  • Learn by questioning everything!
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #5 on: July 13, 2015, 12:15:14 pm »

If it was due to fork, than I don't think it was NXT-K5KL-23DJ-3XLK-22222 being on it,
but rather my source, https://nxtportal.org/monitor/, could have been on a fork...

Thanks for possibly pointing me in the right direction.

Height    Date                         Amount Fee    # TX    Generator                            Payload Base Target
472496   7/13/2015 13:05:49   0   20   20   NXT-K5KL-23DJ-3XLK-22222   7 KB   0767 %
472495   7/13/2015 13:05:32   0   44   44   NXT-A6NF-JE4R-XB6L-FAUFZ   14 KB   1534 %
472494   7/13/2015 13:03:10   30   124   124   NXT-J2ZE-S9TV-43Z7-9LRKC   41 KB   0767 %
472493   7/13/2015 13:00:47   0   133   133   NXT-8MVA-XCVR-3JC9-2C7C3   44 KB   0384 %
472492   7/13/2015 12:55:05   0   132   132   NXT-8MVA-XCVR-3JC9-2C7C3   44 KB   0192 %
Logged
Welcome to the After Nxt Calendar era...
Which started in the year 222 of the French Republic, Frost month, on the fifth day of the first week, better known as the 2456621th Julian day,
even better known as 24 November 2013 at 12:00:00 UTC.

starik69

  • Sr. Member
  • ****
  • Karma: +11/-17
  • Offline Offline
  • Posts: 301
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #6 on: July 13, 2015, 12:54:59 pm »

I think when https://nxtportal.org/monitor/ shows ~>5 forgers missed a block including main forgers is strong indicator that nxtportal.org is on a fork ::)
Logged
NXT-R2U6-22MC-LQL2-22222 (648774468) - NXT | All versions of NXT client and more - https://mega.co.nz/#F!J1xmgAyC!cnaqdxHALLMGiS0hTPrhAg

Jean-Luc

  • Core Dev
  • Hero Member
  • *****
  • Karma: +816/-81
  • Offline Offline
  • Posts: 1610
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #7 on: July 13, 2015, 01:03:37 pm »

If an account fails to generate a block, there should be an error in the log. Those forgers who supposedly missed their turn should inspect their logs around that time. My guess is that they did generate it, but it was later popped off. And this could be because the competing forger who was next in turn also generated his block, and then the one after generated his block too, on top of that second in turn block, making a fork with an overall better difficulty which spread through the network and displaced the first one.
Logged
GPG key fingerprint: 263A 9EB0 29CF C77A 3D06  FD13 811D 6940 E1E4 240C
NXT-X4LF-9A4G-WN9Z-2R322

tiker

  • Jr. Member
  • **
  • Karma: +1/-0
  • Offline Offline
  • Posts: 26
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #8 on: July 13, 2015, 01:14:13 pm »


I had 3 different transactions that was supposed to happen during that time.

On my NXT node, 2 of 3 transactions showed in my wallet as unconfirmed.  I checked the site above and noticed that neither of them had appeared and that it has been about 45 minutes since the previous block had been forged.  I watched for about 15 minutes (1 hour passed since previous block was forged) and then gave up...

This morning, transaction 1 has disappeared and did not end up crediting my wallet.  Transaction 2 and 3 appeared and confirmed.  I lost 1 transaction in there somewhere.
Logged

kushti

  • Sr. Member
  • ****
  • Karma: +184/-5
  • Offline Offline
  • Posts: 384
  • Nxt Core & Apps Dev
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #9 on: July 21, 2015, 09:48:35 pm »

Long delays are not only about non-active forgers.

Each forger generates a value called "hit", which is fn(prev block, account), and it hit < target so there's a right to generate a block. Hit is in range 0..2^63-1, so if there're no many forgers online, there's a chance of getting all the hits having pretty big value, and so big delay occurs before any hit < target(target is ~ time since last block & stake).

Other coins using a lot of hit values(by using e.g. timestamp in hit, as PeerCoin does). There's much bigger problem here though - grinding attacks :)


Consensus Research is thinking on that issue as well :)
Logged
for donations / messages: NXT-PKXM-WH25-UXXG-CJAVD (alias: kushti)

TheCoinWizard

  • Hero Member
  • *****
  • Karma: +97/-55
  • Offline Offline
  • Posts: 614
  • Learn by questioning everything!
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #10 on: July 21, 2015, 10:45:34 pm »

Thanks for all the replies on this.

In short, there is only 2 explanations for the rare even that many skip their turn on https://nxtportal.org/monitor/, which I understand:

I do have some problems with the following explanations as I don't understand them completely.
My guess is that they did generate it, but it was later popped off. And this could be because the competing forger who was next in turn also generated his block, and then the one after generated his block too, on top of that second in turn block, making a fork with an overall better difficulty which spread through the network and displaced the first one.
It would be nice if we could get some logs from those peeps, like forkedchain in order to check this.
But if that happened then why did https://nxtportal.org/monitor/ not move on to the next block generation and predicted that the block generated by the first one would later be popped of... I think this explanation is wrong. You are right that this happens though, but that shows itself in a block reorg, not as 10 forgers on minus x seconds.
Please tell me if my thinking is wrong on this.

Each forger generates a value called "hit", which is fn(prev block, account),
I would love to know more about that function, though my java skill lacks so much that I can't find anything in the code.
and it hit < target so there's a right to generate a block.

Hit is in range 0..2^63-1, so if there're no many forgers online, there's a chance of getting all the hits having pretty big value, and so big delay occurs before any hit < target(target is ~ time since last block & stake).
That explains normal long delays, where other forgers aren't skipped, but the 1st forger with the smallest hit still has a 6000 second hit, right
Other coins using a lot of hit values(by using e.g. timestamp in hit, as PeerCoin does). There's much bigger problem here though - grinding attacks :)
Consensus Research is thinking on that issue as well :)
I do not see how this explains the many minus values for the first 18 forgers in line.

Since I have your attention here anyways, for which I am thankfull, what do you guys think of this:
If your question is: Can 2 accounts with each 1M collaborate and hereby forge by more than 1 account with 2M?
Yes, in the case a 1M account is 1st to forge and the other 1M account is second to forge, the first account could skip generating a block. Hereby granting them a longer block time for the 2nd 1M account to generate. Although the idea was to penalize the skipping account from forging 1440 block. I do not know if that penalty is implemented and do not think that it would matter if it was done with hundreds/thousands of small nxt accounts.

But if that person does a 51% attack, having 51% of the forging stake, then he could technically do this. That is because the standard consensus is the 51% stake. BTC has the same possibility with 51% work attack.

The attacker can only block transactions from getting on the blockchain, but cannot create fake ones. Also, as a reaction, the 49% stake could update their to no longer accept any blocks from the attacking stake and we would have 2 NXTs now... Two forks, one being forged only by the attacker, and one with all the rest on it.
In general it isn't as big of a problem because we can identify the stake that is attacking, whereas in POW i believe this is harder.
because we can seperate the attacking stake from the none attacking stake, whereas in proof of work you cannot.
Doesn't this 'solve' the 51% attack for nxt? (if implemented when needed)?
Logged
Welcome to the After Nxt Calendar era...
Which started in the year 222 of the French Republic, Frost month, on the fifth day of the first week, better known as the 2456621th Julian day,
even better known as 24 November 2013 at 12:00:00 UTC.

coretechs

  • Sr. Member
  • ****
  • Karma: +161/-1
  • Offline Offline
  • Posts: 436
    • View Profile
Re: Strange behavior and extreme long blocks
« Reply #11 on: July 22, 2015, 05:01:12 am »

Just FYI the forging monitor on nxtportal.org was partially broken during the first half of July.  There were race conditions during fork resolution that would leave the server side cache in an inconsistent state, and this is likely what you were seeing.  As far as I can tell it hasn't had any problems since the 15.7.15 release, but if it happens again let me know so I can check against the NRS logs on the server.

https://nxtforum.org/nxtportal-org/lightweight-nxt-block-explorer-858/msg188425/#msg188425
Logged
https://ardorportal.org - Ardor blockchain explorer | https://nxtportal.org - Nxt blockchain explorer | http://bitcoindoc.com - The Rise and Rise of Bitcoin
ARDOR-T43P-R2K9-8W79-9W2AL | NXT-WY9K-ZMTT-QQTT-3NBL7
 

elective-stereophonic
elective-stereophonic
assembly
assembly