Skip to content

'BankClient' and 'MultiBankClient' are broken #83

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
ligurio opened this issue May 24, 2021 · 1 comment
Open

'BankClient' and 'MultiBankClient' are broken #83

ligurio opened this issue May 24, 2021 · 1 comment
Labels
blocked Not ready to be implemented

Comments

@ligurio
Copy link
Member

ligurio commented May 24, 2021

tests 'BankClient' and 'MultiBankClient' are broken because Tarantool doesn't support interactive transactions, see [1].

  1. Interactive transactions in IPROTO tarantool#2016
@ligurio ligurio changed the title Broken tests due to absence of interactive transactions 'BankClient' and 'MultiBankClient' are broken May 24, 2021
ligurio added a commit that referenced this issue May 24, 2021
Commit 3decf8b78017d86f4b593b28789775aaa930ba97 ("Disable test
bank-multitable-lua") tried to disable test by removing it from a list
of tests (standard workloads). First of all patch disabled incorrect
workload, it should be "bank-multitable-lua" and not "bank-multitable".
Secondly there is a better way to do it - using
"workloads-expected-to-pass" that removes workloads that broken for some
reasons. Now "bank-multitable-lua" has been fixed and no reasons to
disable it, see commit e0a27dd "Fix
test bank with accounts in separate tables". Tests "bank-multitable" and
"bank" are still broken because Tarantool doesn't support interactive
transactions, see Tarantool issue [1] and thus these tests excluded in
"workloads-expected-to-pass". Additionally to use working workloads
on Tarantool CI option "workloads-expected-to-pass" enabled by default
when "test-all" used.

1. tarantool/tarantool#2016
2. #83

Follows up tarantool/tarantool#5848
ligurio added a commit that referenced this issue May 24, 2021
Commit 3decf8b78017d86f4b593b28789775aaa930ba97 ("Disable test
bank-multitable-lua") tried to disable test by removing it from a list
of tests (standard workloads). First of all patch disabled incorrect
workload, it should be "bank-multitable-lua" and not "bank-multitable".
Secondly there is a better way to do it - using
"workloads-expected-to-pass" that removes workloads that broken for some
reasons. Now "bank-multitable-lua" has been fixed and no reasons to
disable it, see commit e0a27dd "Fix
test bank with accounts in separate tables". Tests "bank-multitable" and
"bank" are still broken because Tarantool doesn't support interactive
transactions, see Tarantool issue [1] and thus these tests excluded in
"workloads-expected-to-pass". Additionally to use working workloads
on Tarantool CI option "workloads-expected-to-pass" enabled by default
when "test-all" used.

1. tarantool/tarantool#2016
2. #83

Follows up tarantool/tarantool#5848
ligurio added a commit that referenced this issue May 24, 2021
Commit 3decf8b78017d86f4b593b28789775aaa930ba97 ("Disable test
bank-multitable-lua") tried to disable test by removing it from a list
of tests (standard workloads). First of all patch disabled incorrect
workload, it should be "bank-multitable-lua" and not "bank-multitable".
Secondly there is a better way to do it - using
"workloads-expected-to-pass" that removes workloads that broken for some
reasons. Now "bank-multitable-lua" has been fixed and no reasons to
disable it, see commit 978dd81 "Fix
test bank with accounts in separate tables". Tests "bank-multitable" and
"bank" are still broken because Tarantool doesn't support interactive
transactions, see Tarantool issue [1] and thus these tests excluded in
"workloads-expected-to-pass". Additionally to use working workloads
on Tarantool CI option "workloads-expected-to-pass" enabled by default
when "test-all" used.

1. tarantool/tarantool#2016
2. #83

Follows up tarantool/tarantool#5848
@Totktonada
Copy link
Member

Blocked on tarantool/tarantool-java#63.

@Totktonada Totktonada added the blocked Not ready to be implemented label Nov 2, 2021
Totktonada added a commit that referenced this issue Nov 14, 2021
Before this commit the initial distribution was the following: first
account has `total-amount` balances, other 9 ones have zero balance.

From time to time is appears that there are no attempts to transfer from
the first account. It means that all transfers are marked as failed and
the history analysis reports fail.

Even when there are some successful transfers, there are many attempts
to transfer from an account with zero balance: those transfers are
useless in terms of tarantool testing.

This commit changes the initial distribution to the uniform one and
resolves the problems, which are described above. See the linked issue
for details.

Aside of the problematic bank-lua I changed other banking tests in the
same way to unify the approach. How each test is changed:

* bank-lua: [100 0 0 0 0 0 0 0 0 0] -> [10 10 10 10 10 10 10 10 10 10].
* bank-multitable-lua: the test already distributes initial balances
  uniformly, but hardcodes balance value. Now it is deduced from the
  `total-amount` parameter.
* bank: same as bank-lua.
* bank-multitable: same as bank-lua.

'bank' and 'bank-multitable' fixes are blind, because they're disabled.
See #83.

'bank-lua' and 'bank-multitable-lua' are passed in a manual run.
'bank-lua' gives 2-3 failed transfers of ~40 ones. Before it was like
5-15 *successful* ones of 30-40. (I have no representative statistics,
just looked over several runs in CI, but the numbers looks expected.)

Fixes #94
Totktonada added a commit that referenced this issue Nov 20, 2021
Before this commit the initial distribution was the following: first
account has `total-amount` balances, other 9 ones have zero balance.

From time to time is appears that there are no attempts to transfer from
the first account. It means that all transfers are marked as failed and
the history analysis reports fail.

Even when there are some successful transfers, there are many attempts
to transfer from an account with zero balance: those transfers are
useless in terms of tarantool testing.

This commit changes the initial distribution to the uniform one and
resolves the problems, which are described above. See the linked issue
for details.

Aside of the problematic bank-lua I changed other banking tests in the
same way to unify the approach. How each test is changed:

* bank-lua: [100 0 0 0 0 0 0 0 0 0] -> [10 10 10 10 10 10 10 10 10 10].
* bank-multitable-lua: the test already distributes initial balances
  uniformly, but hardcodes balance value. Now it is deduced from the
  `total-amount` parameter.
* bank: same as bank-lua.
* bank-multitable: same as bank-lua.

'bank' and 'bank-multitable' fixes are blind, because they're disabled.
See #83.

'bank-lua' and 'bank-multitable-lua' are passed in a manual run.
'bank-lua' gives 2-3 failed transfers of ~40 ones. Before it was like
5-15 *successful* ones of 30-40. (I have no representative statistics,
just looked over several runs in CI, but the numbers looks expected.)

Fixes #94
Totktonada added a commit that referenced this issue Nov 23, 2021
Before this commit the initial distribution was the following: first
account has `total-amount` balances, other 9 ones have zero balance.

From time to time is appears that there are no attempts to transfer from
the first account. It means that all transfers are marked as failed and
the history analysis reports fail.

Even when there are some successful transfers, there are many attempts
to transfer from an account with zero balance: those transfers are
useless in terms of tarantool testing.

This commit changes the initial distribution to the uniform one and
resolves the problems, which are described above. See the linked issue
for details.

Aside of the problematic bank-lua I changed other banking tests in the
same way to unify the approach. How each test is changed:

* bank-lua: [100 0 0 0 0 0 0 0 0 0] -> [10 10 10 10 10 10 10 10 10 10].
* bank-multitable-lua: the test already distributes initial balances
  uniformly, but hardcodes balance value. Now it is deduced from the
  `total-amount` parameter.
* bank: same as bank-lua.
* bank-multitable: same as bank-lua.

'bank' and 'bank-multitable' fixes are blind, because they're disabled.
See #83.

'bank-lua' and 'bank-multitable-lua' are passed in a manual run.
'bank-lua' gives 2-3 failed transfers of ~40 ones. Before it was like
5-15 *successful* ones of 30-40. (I have no representative statistics,
just looked over several runs in CI, but the numbers looks expected.)

Fixes #94
Totktonada added a commit that referenced this issue Nov 23, 2021
Before this commit the initial distribution was the following: first
account has `total-amount` balances, other 9 ones have zero balance.

From time to time is appears that there are no attempts to transfer from
the first account. It means that all transfers are marked as failed and
the history analysis reports fail.

Even when there are some successful transfers, there are many attempts
to transfer from an account with zero balance: those transfers are
useless in terms of tarantool testing.

This commit changes the initial distribution to the uniform one and
resolves the problems, which are described above. See the linked issue
for details.

Aside of the problematic bank-lua I changed other banking tests in the
same way to unify the approach. How each test is changed:

* bank-lua: [100 0 0 0 0 0 0 0 0 0] -> [10 10 10 10 10 10 10 10 10 10].
* bank-multitable-lua: the test already distributes initial balances
  uniformly, but hardcodes balance value. Now it is deduced from the
  `total-amount` parameter.
* bank: same as bank-lua.
* bank-multitable: same as bank-lua.

'bank' and 'bank-multitable' fixes are blind, because they're disabled.
See #83.

'bank-lua' and 'bank-multitable-lua' are passed in a manual run.
'bank-lua' gives 2-3 failed transfers of ~40 ones. Before it was like
5-15 *successful* ones of 30-40. (I have no representative statistics,
just looked over several runs in CI, but the numbers looks expected.)

Fixes #94
ligurio pushed a commit that referenced this issue Nov 24, 2021
Before this commit the initial distribution was the following: first
account has `total-amount` balances, other 9 ones have zero balance.

From time to time is appears that there are no attempts to transfer from
the first account. It means that all transfers are marked as failed and
the history analysis reports fail.

Even when there are some successful transfers, there are many attempts
to transfer from an account with zero balance: those transfers are
useless in terms of tarantool testing.

This commit changes the initial distribution to the uniform one and
resolves the problems, which are described above. See the linked issue
for details.

Aside of the problematic bank-lua I changed other banking tests in the
same way to unify the approach. How each test is changed:

* bank-lua: [100 0 0 0 0 0 0 0 0 0] -> [10 10 10 10 10 10 10 10 10 10].
* bank-multitable-lua: the test already distributes initial balances
  uniformly, but hardcodes balance value. Now it is deduced from the
  `total-amount` parameter.
* bank: same as bank-lua.
* bank-multitable: same as bank-lua.

'bank' and 'bank-multitable' fixes are blind, because they're disabled.
See #83.

'bank-lua' and 'bank-multitable-lua' are passed in a manual run.
'bank-lua' gives 2-3 failed transfers of ~40 ones. Before it was like
5-15 *successful* ones of 30-40. (I have no representative statistics,
just looked over several runs in CI, but the numbers looks expected.)

Fixes #94
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked Not ready to be implemented
Projects
None yet
Development

No branches or pull requests

2 participants