bitshares / bitshares/bitshares-ui
Full history will fail if total OPs is beyond 10,000
- Dominant language
- JavaScript
- Stars
- 520
- Forks
- 575
- Avg merge
- 12h 7m
- Merged PRs (30d)
- 5
Description
**Describe the bug**
When trying to download account history via wrapper.elasticsearch.bitshares.ws on desktop 3.1.190618.1, wallet.bitshares.org (chrome and firefox), and develop.bitshares.org(chrome and firefox) ... they all fail with the message "Failed to download the account history, please try again"
here is the console error: (ignore the strikethroughs)
```
account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1 GET https://wrapper.elasticsearch.bitshares.ws/get_account_history?account_id=1.2.1310&from_=9900&size=150&sort_by=block_data.block_time&type=data&agg_field=operation_type 500 (INTERNAL SERVER ERROR)
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
value @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
w @ vendor.0c03c0a87759ca1ced2a.js:132
(anonymous) @ vendor.0c03c0a87759ca1ced2a.js:132
e. @ vendor.0c03c0a87759ca1ced2a.js:132
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
Promise.then (async)
n @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
(anonymous) @ account~dashboard-accounts~deposit-withdraw~transfer.ec9c3b3ab746268987e3.js:1
From the same browser checking "is_alive"
https://wrapper.elasticsearch.bitshares.ws/is_alive
deltatime | 2.882458
-- | --
head_block_time | "2019-07-30T16:15:27.000Z"
head_block_timestamp | 1564503327000
server_time | "Tue, 30 Jul 2019 16:15:29 GMT"
status | "ok"
```
Contributor guide
Research direction
Start by reproducing the account-history request to wrapper.elasticsearch.bitshares.ws/get_account_history with from_=9900 and size=150, using the account and browser details in the report. Trace the account-history download flow in the JavaScript application and determine whether the request or service fails beyond 10,000 operations; done means full history downloads without the reported error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- elasticsearch, javascript
- Domain
- api, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100