SL21W45: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(8 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
<br /> | <br /> | ||
* '''Chunkli: Unloading hanging chunk [...] causes deadlock. Need to rework that solution | *Slots in inventories can be NULL OR AIR. PlayerInv & Chest have NULL. CratingInv has AIR. | ||
*Decision: Remove all the TAB-Menu code. Only use Tab header / tab footer for minimal stuff. '''Rest should go on the screen only''' | |||
*Chunkli: Unloading hanging chunk [...] causes deadlock. Need to rework that solution | |||
**BUT...we should not fix it as 1.18 is probably gonna break it anyways. Lets wait and save the time<br /> | |||
*Stasi system | *Stasi system | ||
Line 11: | Line 14: | ||
**Do not log UUID of TNTPrimed / ItemSpawn | **Do not log UUID of TNTPrimed / ItemSpawn | ||
*Stasi event generation test & performance impact | *Stasi event generation test & performance impact | ||
**Queries for n1ql and stasi metadata subdocuments | |||
***'''Unable to use JsonObject.create().put("world", String.valueOf(world)); for replacing somehow. Using String.replace for now as params are be validated anyway'''<syntaxhighlight lang="java"> | |||
String readableString = | |||
""" | |||
select doc.* from $bsc as doc | |||
where doc.timeStamp > $from AND doc.timeStamp < $to | |||
AND doc.regions.$world IS VALUED | |||
AND (ANY r IN doc.regions.$world SATISFIES r.x >= $xMin AND r.x < $xMax AND r.z >= $zMin AND r.z < $zMax END) | |||
ORDER BY doc.timeStamp ASC | |||
LIMIT 5000; | |||
"""; | |||
</syntaxhighlight> | |||
***SELECT doc.* FROM kadi.etm20100.account as doc | |||
***SELECT doc.* FROM bucket.<ServerId>.<DBType> | |||
**Looks good nearly no load on main thread | **Looks good nearly no load on main thread | ||
**Couchbase storage approach SEEMS to be correct. But not yet fully supported from couchbase: https://forums.couchbase.com/t/scope-collection-limit-performance-impact/32146 | |||
**Writing in async larger json chunks seems efficient | **Writing in async larger json chunks seems efficient | ||
** | **Need to decide if we store StasiData as json or binary at some point. | ||
*** | ***Using kryo should drastically reduce stasidata. But our meta objects need to be very good first | ||
*** | ***Probably not gonna implement StasiData searching via n1ql anyway and do that in the java code as we need to implement it anyway for the lastest 1-5minutes of events | ||
*/stasi querying first implementation | |||
**getting metadata | |||
**filter stasidata container to only given flags/params | |||
**<br /> | |||
*** | *** |
Latest revision as of 00:05, 4 November 2022
- Slots in inventories can be NULL OR AIR. PlayerInv & Chest have NULL. CratingInv has AIR.
- Decision: Remove all the TAB-Menu code. Only use Tab header / tab footer for minimal stuff. Rest should go on the screen only
- Chunkli: Unloading hanging chunk [...] causes deadlock. Need to rework that solution
- BUT...we should not fix it as 1.18 is probably gonna break it anyways. Lets wait and save the time
- BUT...we should not fix it as 1.18 is probably gonna break it anyways. Lets wait and save the time
- Stasi system
- Fully switch to Scopes & Collections
- Remove all Views
- Use water-break, tnt-break
- Do not log UUID of TNTPrimed / ItemSpawn
- Stasi event generation test & performance impact
- Queries for n1ql and stasi metadata subdocuments
- Unable to use JsonObject.create().put("world", String.valueOf(world)); for replacing somehow. Using String.replace for now as params are be validated anyway
String readableString = """ select doc.* from $bsc as doc where doc.timeStamp > $from AND doc.timeStamp < $to AND doc.regions.$world IS VALUED AND (ANY r IN doc.regions.$world SATISFIES r.x >= $xMin AND r.x < $xMax AND r.z >= $zMin AND r.z < $zMax END) ORDER BY doc.timeStamp ASC LIMIT 5000; """;
- SELECT doc.* FROM kadi.etm20100.account as doc
- SELECT doc.* FROM bucket.<ServerId>.<DBType>
- Unable to use JsonObject.create().put("world", String.valueOf(world)); for replacing somehow. Using String.replace for now as params are be validated anyway
- Looks good nearly no load on main thread
- Couchbase storage approach SEEMS to be correct. But not yet fully supported from couchbase: https://forums.couchbase.com/t/scope-collection-limit-performance-impact/32146
- Writing in async larger json chunks seems efficient
- Need to decide if we store StasiData as json or binary at some point.
- Using kryo should drastically reduce stasidata. But our meta objects need to be very good first
- Probably not gonna implement StasiData searching via n1ql anyway and do that in the java code as we need to implement it anyway for the lastest 1-5minutes of events
- Queries for n1ql and stasi metadata subdocuments
- /stasi querying first implementation
- getting metadata
- filter stasidata container to only given flags/params