Giter VIP home page Giter VIP logo

Comments (15)

dataders avatar dataders commented on July 17, 2024 2

@brandonlockhart, sorry about that! we're also experiencing this bug with dbt-synapse in dbt-msft/tsql-utils#76. the tests fail with same error message! We hope to find a solution soon, though it likely won't be until after the holidays as most of us will be OOO. hang tight! cc: @jtcohen6

from dbt-synapse.

jtcohen6 avatar jtcohen6 commented on July 17, 2024 1

@swanderz Given the error message, and that #72 moved this macro from macros/adapters.sql to macros/adapters/relation.sql... If you install dbt-synapse pre-v1.0, and then upgrade to v1.0, is it possible that the old file keeps "hanging out" in the source installation?

I quickly tried replicating this locally, and I wasn't able to

from dbt-synapse.

dschoenleber avatar dschoenleber commented on July 17, 2024 1

I was able to reproduce the error both on macos as well as Windows (python3.8). When I reviewed the RECORD file in site-packages/dbt_synapse-1.0.1.dist-info in my python environment I could verify that indeed during the installation files such as dbt/include/synapse/macros/adapters.sql and dbt/include/synapse/macros/materializations/seed/seed.sql were written, which lead to duplications (files that are, curiously, not present in the include folder of the 1.0.1 version of the repository).

I was seemingly able to hotfix this by adapting the setup.py by changing packages=find_namespace_packages(include=['dbt', 'dbt.*']), to packages=find_packages(), since I was wondering whether this had something to do with mixing native and pkgutil-style namespaces (see docs). But honestly, I am very puzzled where those files come from, and I am aware that the setup.py seemingly works for the dbt-sqlserver adapter.

from dbt-synapse.

sdebruyn avatar sdebruyn commented on July 17, 2024 1

Looks like the files were left on the machine that created the package, because when you just recreate the wheel, they're not inside the archive. I attached a wheel file created from the current version of the source where it doesn't show that behaviour.

@dataders Maybe we should setup automatic publishing to pypi when a new tag is created to avoid such issues? Anyway, if you create a new release 1.0.2, then make sure you have a clean version of the repo locally and recreate the wheel, then we're good.

dbt_synapse-1.0.1-py3-none-any.whl.zip

from dbt-synapse.

sdebruyn avatar sdebruyn commented on July 17, 2024 1

no errors anymore with 1.0.2b1 :)

Thank you @dataders !

from dbt-synapse.

dataders avatar dataders commented on July 17, 2024

until then stick with v0.21.0!

from dbt-synapse.

dataders avatar dataders commented on July 17, 2024

@leahwicz @jtcohen6 have y'all seen this issue before? this is a showstopping bug in the 1.0.0 release I made before the break. there's a link to a CircleCi failure above. there aren't duplicate macros, and the macro that says it's duplicated changes from commit to commit, so I'm rather confused.

also I'd like to get #77 fixed so my name doesn't live in peoples' console and manifest anymore.... 🤒

from dbt-synapse.

dataders avatar dataders commented on July 17, 2024

@dschoenleber thanks for digging into this! You got farther than I did. @jtcohen6's question is does this behavior happen when upgrading to 1.0.0 and maybe the old adapters.sql file stays around? asked another way, if you make a fresh python environment and install dbt-synapse 1.0.0 does the error still happen?

I'd also like to fix this in the next few days, sounds like you found a hotfix that I'll try out on my end as well. Cheers!

from dbt-synapse.

dschoenleber avatar dschoenleber commented on July 17, 2024

@dataders Your're welcome! Yes, the behavior I described occurred with a freshly initialized environment with no prior dbt (or dbt-synapse) installation around, so the behavior is triggered by the installation of dbt-synapse 1.0.1. This makes it so curious.

from dbt-synapse.

sdebruyn avatar sdebruyn commented on July 17, 2024

I can replicate this in my devcontainer with a clean install. Also, the name of the duplicate macro is not constant. It's almost always a different one each time you run dbt compile.

from dbt-synapse.

dschoenleber avatar dschoenleber commented on July 17, 2024

@sdebruyn This would also explain my observations. (If you install via pip install git+https://github.com/dbt-msft/dbt-synapse.git the additional files are also not included.)

Thanks so much for digging into it!

from dbt-synapse.

dataders avatar dataders commented on July 17, 2024

@sdebruyn is the real MVP for discovering that I made a faulty wheel. I've fixed the wheel and released it as 1.0.2b1 (pypi page). Please let me know if this resolves the issue. If so, I'll release the official release and we can celebrate the release of dbt-synapse 1.0.0!

from dbt-synapse.

brandonlockhart avatar brandonlockhart commented on July 17, 2024

No more errors for me either with 1.0.2b1. Thanks @dataders !

from dbt-synapse.

lurifaxel avatar lurifaxel commented on July 17, 2024

When can we look forward to the official release of 1.0.2? :)

from dbt-synapse.

sdebruyn avatar sdebruyn commented on July 17, 2024

1.0.2 has been released :)

from dbt-synapse.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.