The-Microservice-Dungeon / gamelog

1 stars 1 forks source link

Select-Query for PlayerStatistics not working #19

Open ahahn94 opened 2 years ago

ahahn94 commented 2 years ago

I couldn't get the Select-Query for the PlayerStatistics working in time. Thus, the required data for awarding the achievements to the players can't be obtained. This only concerns the round-based achievements, the scoreboard trophies aren't affected by this.

The awarding and persisting of trophies and achievements is working perfectly fine in unit tests, with the faulty query being mocked via Mockito. It is also hooked up into the game lifecycle and the lifecycle hook has also been tested with unit tests.

So, if the query is fixed, achievements should be awarded by the service. Right now, though, the query only results in a valid Player and all statistics defaulting to 0.

I'm really annoyed by this issue, as I wasted half a day on trying to fix this - without any progress. As soon as I add a JOIN to the query (LEFT JOIN, so no risk of eliminating datasets of the existing query), the result set stays empty.

The query: https://github.com/The-Microservice-Dungeon/gamelog/blob/005a67968057a2aa6766e5ac6598b437a67ce17e/src/main/java/com/github/tmd/gamelog/adapter/jpa/PlayerStatisticsJpaRepository.java#L18