SL21W45: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 5: | Line 5: | ||
*Slots in inventories can be NULL OR AIR. PlayerInv & Chest have NULL. CratingInv has AIR. | *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''' | *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 /> | **BUT...we should not fix it as 1.18 is probably gonna break it anyways. Lets wait and save the time<br /> | ||
Line 36: | Line 36: | ||
*/stasi querying first implementation | */stasi querying first implementation | ||
**getting metadata | **getting metadata | ||
** | **filter stasidata container to only given flags/params | ||
**<br /> | **<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