sql >> Database >  >> RDS >> PostgreSQL

Axon Aggregate Identifier Type Converter

Eerlijk gezegd ben je hier behoorlijk diep op de zaak gegaan @Zon. Ik weet niet zeker of ik je voldoende kan helpen, maar ik zal het toch proberen.

Onderzoekspunt 1 is uiteraard de meest pragmatische oplossing om de zaken nu werkend te krijgen. Als je de "ineffectiviteit" van String . gaat opmerken vergeleken met UUID is iets waar ik het moeilijk mee zou hebben. Dus als dit een absoluut nee nee is, moet het onderzoek doorgaan. Anders wordt de klus natuurlijk geklaard.

Als het gaat om onderzoekspunten 2 en 3, denk ik dat je een probleem hebt met het dialect dat wordt gebruikt voor PostgreSQL, hoewel ik hier niet 100% zeker van ben. Vooral PostgreSQL zwaait met een aantal "geweldige" typen, maar deze werken niet altijd automatisch in alle scenario's. Ik baseer mijn "giswerk" hier op het dwingen van PostgreSQL om BYTEA te gebruiken in plaats van OID voor het geval je dat wilt, moet je de TOAST van Postgres uitschakelen vermogen. Dit wordt vooral handig als je ervoor kiest om Postgres te gebruiken voor je evenementenwinkel en de inhoud van evenementen daadwerkelijk wilt kunnen zien. In deze blogpost staat bijvoorbeeld beschreven hoe hiermee om te gaan. Wat nog belangrijker is, deze blog post laat zien hoe je bijvoorbeeld het gebruikte dialect kunt aanpassen. Misschien is dat iets voor u in oplossing 2 en 3?

Optie 4 zou in dit geval de meest logische oplossing moeten zijn. Maar uit je reactie maak ik op dat je het op dit moment niet werkend hebt gekregen. Bij het combineren van Axon met Spring, zal de SpringAxonAutoConfigurer (waaruit u verwijst naar de registerAggregateBeanDefinitions methode van geloof ik) zal automatisch controleren op configureerbare bonen op uw Aggregate. Het doet dit op basis van velden die zijn gedefinieerd in de @Aggregate (d.w.z. Axon's Spring stereotype annotatie). Meer specifiek kunt u de repository . gebruiken veld in het @Aggregate om de beannaam te definiëren van de repository die u wilt gebruiken.

U zou dus eenvoudig een GenericJpaRepository . moeten kunnen verstrekken boon met de gewenste identifierConverter . De naam van die boon kan dan worden opgegeven in de @Aggregate annotatie op uw MyAggregate , zodat de automatische configuratie van Axon het correct kan oppikken. Ik hoop dat dit je helpt!




  1. PostgreSQL:waarom gebruikt deze query mijn index niet?

  2. Wat is de beste aanpak om alle adressen te vinden die zich op een bepaalde afstand tot het geselecteerde punt bevinden?

  3. Hoe kan ik bestellen door een aangepaste functie in SQLAlchemy

  4. psycopg2.OperationalError:FATAL:niet-ondersteund frontend-protocol 1234.5679:server ondersteunt 2.0 tot 3.0