Skip to content
This repository was archived by the owner on Apr 28, 2025. It is now read-only.
This repository was archived by the owner on Apr 28, 2025. It is now read-only.

Recompiling the RDFResource class breaks protocol matching on existing RDFResource objects in memory #656

Description

@theferrit32
  1. Start a REPL
  2. Load an RDFResource somehow (genegraph.database.query/select, or something)
  3. Do a q/ld-> function call on it for a predicate that exists (this works)
  4. Recompile the genegraph.database.query.types module in the REPL, which includes the RDFResource class.
  5. Repeat step (3). (this doesn't work)

Performing the operation that constructed the RDFResource object from (2) makes it work again. So this seems like something to do with how protocols attach to classes/deftypes in clojure. Recompiling the class makes the protocol functions not recognize an object made from the class prior to the recompilation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions