GraphQLSwift / GraphQL

The Swift GraphQL implementation for macOS and Linux
MIT License
938 stars 72 forks source link

Some memory release didn't work #148

Open Dracks opened 1 month ago

Dracks commented 1 month ago

Hello,

In my process of migrate, today I pushed a version in which the tests were green in my machine, and the tests crashed with the following error:

*** Program crashed: Illegal instruction at 0x00007fa0d0aa661f ***Thread 0 "MrScrooge-swift":0  0x00007fa0cf8e3cce <unknown> in libc.so.6Thread 1:0  0x00007fa0cf85c117 <unknown> in libc.so.6

Thread 2:0  0x00007fa0cf8f0e2e <unknown> in libc.so.6

Thread 3:0                  0x00007fa0d0d0bbf8 destroy for Character + 8 in libswiftCore.so
  1 [ra]             0x00007fa0d0d371aa swift_arrayDestroy + 137 in libswiftCore.so
  2 [ra]             0x00007fa0d0aecb77 _ContiguousArrayStorage.__deallocating_deinit + 38 in libswiftCore.so
  3 [ra]             0x00007fa0d0d47180 _swift_release_dealloc + 15 in libswiftCore.so
  4 [ra]             0x00007fa0d0d479fb bool swift::RefCounts<swift::RefCountBitsT<(swift::RefCountInlinedness)1> >::doDecrementSlow<(swift::PerformDeinit)1>(swift::RefCountBitsT<(swift::RefCountInlinedness)1>, unsigned int) + 122 in libswiftCore.so
  5 [ra] [system]    0x000055f0221edad1 outlined destroy of OrderedDictionary<String, GraphQLFieldDefinition> + 32 in MrScrooge-swift-serverPackageTests.xctest at /__w/mr-scrooge/mr-scrooge/swift-server/<compiler-generated>
  6 [ra] [system]    0x000055f0221d960e GraphQLObjectType.deinit + 61 in MrScrooge-swift-serverPackageTests.xctest at /__w/mr-scrooge/mr-scrooge/swift-server/.build/checkouts/GraphQL/Sources/GraphQL/Type/Definition.swift

You can see the full stack here: https://github.com/Dracks/mr-scrooge/actions/runs/10853837619/job/30122978733#step:4:2975

But after reruning the pipeline, it went green with the same commit. Which makes me thing there is some issue. I think I did everything fine, but maybe I've got an error. Since the error happens deinitializing some object from this library, I'm asking it here.

Thanks, Dracks

P.D.: you can see the second attempt on the same commit here: https://github.com/Dracks/mr-scrooge/actions/runs/10853837619