Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: Ensure compatible table schema by adding missing columns and expanding column sizes #327

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

GovindHede
Copy link

@GovindHede GovindHede commented Aug 6, 2024

Summary

This pull request ensures that the table schema is compatible with the stream's schema by adding any missing columns and expanding column sizes if necessary.

Changes Made

  1. Implemented _ensure_compatible_table_schema method to:
    • Add any missing columns to the table.
    • Ensure column sizes are compatible with the stream's schema.
  2. Added helper methods:
    • _get_stream_schema: Retrieve the schema for the specified stream.
    • _get_table_schema: Retrieve the schema of the specified table.
    • _is_size_expansion_needed: Check if the column size needs to be expanded.
    • _generate_alter_column_statement: Generate an ALTER TABLE statement for expanding column size.
    • _execute_alterations: Execute a list of ALTER TABLE statements.

Issue Reference

- 321

Summary by CodeRabbit

  • New Features

    • Enhanced schema compatibility checks to automatically adjust column sizes and add missing columns in tables.
    • Introduced methods to retrieve stream and table schemas dynamically, ensuring seamless updates without manual intervention.
  • Bug Fixes

    • Resolved potential issues with column size adjustments that were previously unhandled.

These changes improve the system's adaptability to schema changes, enhancing overall reliability.

Copy link

coderabbitai bot commented Aug 6, 2024

Walkthrough

Walkthrough

The recent updates to the _ensure_compatible_table_schema method in the sql_processor.py file significantly enhance its functionality. The method now automatically adjusts a table's schema by adding missing columns and expanding column sizes when necessary, ensuring seamless compatibility with incoming stream definitions. This improvement increases the system’s flexibility and reduces the need for manual schema management.

Changes

Files Change Summary
airbyte/_future_cdk/sql_processor.py Enhanced _ensure_compatible_table_schema to include logic for expanding column sizes and added new helper methods for schema retrieval and modification.

Possibly related issues

Wdyt? Would you like to add any specific details or changes to the summary?


Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 5b3a971 and 4070e2d.

Files selected for processing (1)
  • airbyte/_future_cdk/sql_processor.py (1 hunks)
Additional context used
Ruff
airbyte/_future_cdk/sql_processor.py

456-457: SyntaxError: Expected an indented block after function definition


457-457: SyntaxError: Expected a statement


457-457: Expected 2 blank lines after class or function definition, found (0)

(E305)


457-457: Expected an indented block

(E112)


457-457: SyntaxError: Expected a statement


457-457: Missing whitespace around bitwise or shift operator

(E227)


457-457: SyntaxError: Expected a statement


457-457: Missing whitespace around bitwise or shift operator

(E227)


457-457: SyntaxError: Expected a statement


457-457: Missing whitespace around operator

(E225)


458-458: SyntaxError: Unexpected indentation


458-458: Unexpected indentation

(E113)


461-461: SyntaxError: Simple statements must be separated by newlines or semicolons


461-461: SyntaxError: Simple statements must be separated by newlines or semicolons


461-461: SyntaxError: Simple statements must be separated by newlines or semicolons


461-461: SyntaxError: Compound statements are not allowed on the same line as simple statements


461-461: SyntaxError: Expected 'in', found name


461-461: SyntaxError: Expected ':', found name


461-462: SyntaxError: Expected an identifier


462-462: SyntaxError: Expected a statement


462-462: SyntaxError: Expected a statement


462-462: Missing whitespace around bitwise or shift operator

(E227)


462-462: SyntaxError: Expected a statement


462-462: Missing whitespace around bitwise or shift operator

(E227)


462-462: SyntaxError: Expected a statement


462-462: Missing whitespace around operator

(E225)


462-462: SyntaxError: Simple statements must be separated by newlines or semicolons


464-464: SyntaxError: Unexpected indentation


464-464: Unexpected indentation

(E113)


464-464: SyntaxError: Expected a statement


464-464: Missing whitespace after ':'

(E231)


464-464: SyntaxError: Simple statements must be separated by newlines or semicolons


464-464: SyntaxError: Simple statements must be separated by newlines or semicolons


464-464: SyntaxError: Simple statements must be separated by newlines or semicolons


464-464: SyntaxError: Simple statements must be separated by newlines or semicolons


465-465: SyntaxError: Expected a statement


465-465: Missing whitespace after ':'

(E231)


465-465: SyntaxError: Expected a statement


465-465: SyntaxError: Simple statements must be separated by newlines or semicolons


465-465: SyntaxError: Simple statements must be separated by newlines or semicolons


465-465: SyntaxError: Simple statements must be separated by newlines or semicolons


465-465: SyntaxError: missing closing quote in string literal


465-465: Trailing whitespace

(W291)


465-466: SyntaxError: Expected a statement


466-466: SyntaxError: Expected a statement


466-466: SyntaxError: Simple statements must be separated by newlines or semicolons


466-466: SyntaxError: Expected a statement


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-475: SyntaxError: Expected an identifier


475-475: SyntaxError: Expected a statement


475-475: SyntaxError: Expected a statement


475-475: Missing whitespace around operator

(E225)


475-475: SyntaxError: Expected a statement


475-475: Missing whitespace around operator

(E225)


475-475: SyntaxError: Expected a statement


475-475: Missing whitespace around operator

(E225)


475-476: SyntaxError: Expected a statement


476-476: SyntaxError: Unexpected indentation


476-476: Unexpected indentation

(E113)


480-480: Trailing whitespace

(W291)


486-486: Blank line contains whitespace

(W293)


488-489: SyntaxError: Expected an indented block after for statement


489-489: SyntaxError: Expected a statement


489-489: Expected an indented block

(E112)


489-489: SyntaxError: Expected a statement


489-489: Missing whitespace around bitwise or shift operator

(E227)


489-489: SyntaxError: Expected a statement


489-489: Missing whitespace around bitwise or shift operator

(E227)


489-489: SyntaxError: Expected a statement


489-489: Missing whitespace around operator

(E225)


490-490: SyntaxError: Unexpected indentation


490-490: Unexpected indentation

(E113)


494-494: Line too long (107 > 100)

(E501)


495-495: Blank line contains whitespace

(W293)


496-496: SyntaxError: Expected a statement


496-496: SyntaxError: Expected a statement


496-496: Missing whitespace around operator

(E225)


496-496: SyntaxError: Expected a statement


496-496: Missing whitespace around operator

(E225)


496-496: SyntaxError: Expected a statement


496-496: Missing whitespace around operator

(E225)


496-497: SyntaxError: Expected a statement


497-497: SyntaxError: Unexpected indentation


497-497: Unexpected indentation

(E113)


498-498: SyntaxError: Expected a statement


498-498: SyntaxError: Expected a statement


498-498: Missing whitespace around bitwise or shift operator

(E227)


498-498: SyntaxError: Expected a statement


498-498: Missing whitespace around bitwise or shift operator

(E227)


498-498: SyntaxError: Expected a statement


498-498: Missing whitespace around operator

(E225)


498-498: SyntaxError: Simple statements must be separated by newlines or semicolons


499-499: SyntaxError: Unexpected indentation


499-499: Unexpected indentation

(E113)


503-503: SyntaxError: unindent does not match any outer indentation level


503-503: Too many blank lines (3)

(E303)


504-504: Over-indented

(E117)


522-522: SyntaxError: unindent does not match any outer indentation level


525-525: Over-indented

(E117)


535-535: SyntaxError: unindent does not match any outer indentation level


536-536: Over-indented

(E117)

Additional comments not posted (5)
airbyte/_future_cdk/sql_processor.py (5)

427-455: Ensure dependencies are correctly implemented.

The _ensure_compatible_table_schema method looks good and logically sound. However, it relies on other methods like _get_stream_schema, _get_table_schema, _is_size_expansion_needed, _generate_alter_column_statement, and _execute_alterations. Ensure these methods are correctly implemented and tested to avoid runtime issues. Wdyt?


471-499: Consider adding error handling for SQL execution.

The _get_table_schema method retrieves the table schema using a SQL DESCRIBE command. It might be beneficial to add error handling for potential SQL exceptions, such as connection issues or invalid table names. This could improve the robustness of the method. Wdyt?

Tools
Ruff

474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-474: SyntaxError: Simple statements must be separated by newlines or semicolons


474-475: SyntaxError: Expected an identifier


475-475: SyntaxError: Expected a statement


475-475: SyntaxError: Expected a statement


475-475: Missing whitespace around operator

(E225)


475-475: SyntaxError: Expected a statement


475-475: Missing whitespace around operator

(E225)


475-475: SyntaxError: Expected a statement


475-475: Missing whitespace around operator

(E225)


475-476: SyntaxError: Expected a statement


476-476: SyntaxError: Unexpected indentation


476-476: Unexpected indentation

(E113)


480-480: Trailing whitespace

(W291)


486-486: Blank line contains whitespace

(W293)


488-489: SyntaxError: Expected an indented block after for statement


489-489: SyntaxError: Expected a statement


489-489: Expected an indented block

(E112)


489-489: SyntaxError: Expected a statement


489-489: Missing whitespace around bitwise or shift operator

(E227)


489-489: SyntaxError: Expected a statement


489-489: Missing whitespace around bitwise or shift operator

(E227)


489-489: SyntaxError: Expected a statement


489-489: Missing whitespace around operator

(E225)


490-490: SyntaxError: Unexpected indentation


490-490: Unexpected indentation

(E113)


494-494: Line too long (107 > 100)

(E501)


495-495: Blank line contains whitespace

(W293)


496-496: SyntaxError: Expected a statement


496-496: SyntaxError: Expected a statement


496-496: Missing whitespace around operator

(E225)


496-496: SyntaxError: Expected a statement


496-496: Missing whitespace around operator

(E225)


496-496: SyntaxError: Expected a statement


496-496: Missing whitespace around operator

(E225)


496-497: SyntaxError: Expected a statement


497-497: SyntaxError: Unexpected indentation


497-497: Unexpected indentation

(E113)


498-498: SyntaxError: Expected a statement


498-498: SyntaxError: Expected a statement


498-498: Missing whitespace around bitwise or shift operator

(E227)


498-498: SyntaxError: Expected a statement


498-498: Missing whitespace around bitwise or shift operator

(E227)


498-498: SyntaxError: Expected a statement


498-498: Missing whitespace around operator

(E225)


498-498: SyntaxError: Simple statements must be separated by newlines or semicolons


499-499: SyntaxError: Unexpected indentation


499-499: Unexpected indentation

(E113)


503-520: Check type format before parsing sizes.

The _is_size_expansion_needed method assumes that both existing_type and new_type have size specifications in parentheses. Consider adding a check to ensure this format before attempting to parse sizes, to avoid potential errors. Wdyt?

Tools
Ruff

503-503: SyntaxError: unindent does not match any outer indentation level


503-503: Too many blank lines (3)

(E303)


504-504: Over-indented

(E117)


522-533: LGTM!

The _generate_alter_column_statement method is well-implemented and straightforward. It correctly constructs ALTER TABLE statements based on the provided specifications. Nice work!

Tools
Ruff

522-522: SyntaxError: unindent does not match any outer indentation level


525-525: Over-indented

(E117)


535-542: LGTM!

The _execute_alterations method is implemented correctly. It executes each ALTER TABLE statement in the provided list using a SQL connection. Well done!

Tools
Ruff

535-535: SyntaxError: unindent does not match any outer indentation level


536-536: Over-indented

(E117)


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

‼️ IMPORTANT
Auto-reply has been disabled for this repository in the CodeRabbit settings. The CodeRabbit bot will not respond to your replies unless it is explicitly tagged.

  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Outside diff range, codebase verification and nitpick comments (17)
airbyte/_future_cdk/sql_processor.py (17)

447-447: Line too long

The line exceeds the maximum line length of 100 characters.

-                    alterations.append(self._generate_alter_column_statement(table_name, column_name, new_column_spec))
+                    alterations.append(
+                        self._generate_alter_column_statement(table_name, column_name, new_column_spec)
+                    )
Tools
Ruff

447-447: Line too long (119 > 100)

(E501)


453-458: Docstring formatting

Multi-line docstring summary should start at the first line and remove whitespace after opening quotes.

-        """
-        Retrieve the schema for the specified stream.
-    
+        """Retrieve the schema for the specified stream.
+
Tools
Ruff

453-458: Multi-line docstring summary should start at the first line

Remove whitespace after opening quotes

(D212)


455-455: Blank line contains whitespace

Remove whitespace from blank line

(W293)


457-457: Line too long (111 > 100)

(E501)


455-455: Remove whitespace from blank line

Remove the unnecessary whitespace from the blank line.

-    
+
Tools
Ruff

455-455: Blank line contains whitespace

Remove whitespace from blank line

(W293)


457-457: Line too long

The line exceeds the maximum line length of 100 characters.

-        :return: Dictionary of the stream's schema with column names as keys and their specifications as values
+        :return: Dictionary of the stream's schema with column names as keys and specifications as values
Tools
Ruff

457-457: Line too long (111 > 100)

(E501)


463-468: Docstring formatting

Multi-line docstring summary should start at the first line and remove whitespace after opening quotes.

-        """
-        Retrieve the schema of the specified table.
-    
+        """Retrieve the schema of the specified table.
+
Tools
Ruff

463-468: Multi-line docstring summary should start at the first line

Remove whitespace after opening quotes

(D212)


465-465: Blank line contains whitespace

Remove whitespace from blank line

(W293)


467-467: Line too long (107 > 100)

(E501)


465-465: Remove whitespace from blank line

Remove the unnecessary whitespace from the blank line.

-    
+
Tools
Ruff

465-465: Blank line contains whitespace

Remove whitespace from blank line

(W293)


467-467: Line too long

The line exceeds the maximum line length of 100 characters.

-        :return: Dictionary of existing schema with column names as keys and their specifications as values
+        :return: Dictionary of existing schema with column names as keys and specifications as values
Tools
Ruff

467-467: Line too long (107 > 100)

(E501)


474-474: Use double quotes

Single quotes found but double quotes are preferred.

-            schema[row['Field']] = row
+            schema[row["Field"]] = row
Tools
Ruff

474-474: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


478-484: Docstring formatting

Multi-line docstring summary should start at the first line and remove whitespace after opening quotes.

-        """
-        Check if the column size needs to be expanded.
-    
+        """Check if the column size needs to be expanded.
+
Tools
Ruff

478-484: Multi-line docstring summary should start at the first line

Remove whitespace after opening quotes

(D212)


480-480: Blank line contains whitespace

Remove whitespace from blank line

(W293)


480-480: Remove whitespace from blank line

Remove the unnecessary whitespace from the blank line.

-    
+
Tools
Ruff

480-480: Blank line contains whitespace

Remove whitespace from blank line

(W293)


485-490: Use double quotes

Single quotes found but double quotes are preferred.

-        existing_type = existing_spec['Type']
-        new_type = new_spec['Type']
-    
-        if '(' in existing_type and '(' in new_type:
-            existing_size = int(existing_type.split('(')[1].rstrip(')'))
-            new_size = int(new_type.split('(')[1].rstrip(')'))
+        existing_type = existing_spec["Type"]
+        new_type = new_spec["Type"]
+
+        if "(" in existing_type and "(" in new_type:
+            existing_size = int(existing_type.split("(")[1].rstrip(")"))
+            new_size = int(new_type.split("(")[1].rstrip(")"))
Tools
Ruff

485-485: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


486-486: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


487-487: Blank line contains whitespace

Remove whitespace from blank line

(W293)


488-488: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


488-488: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


489-489: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


489-489: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


490-490: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


490-490: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


495-502: Docstring formatting

Multi-line docstring summary should start at the first line and remove whitespace after opening quotes.

-        """
-        Generate an ALTER TABLE statement for expanding column size.
-    
+        """Generate an ALTER TABLE statement for expanding column size.
+
Tools
Ruff

495-502: Multi-line docstring summary should start at the first line

Remove whitespace after opening quotes

(D212)


497-497: Blank line contains whitespace

Remove whitespace from blank line

(W293)


497-497: Remove whitespace from blank line

Remove the unnecessary whitespace from the blank line.

-    
+
Tools
Ruff

497-497: Blank line contains whitespace

Remove whitespace from blank line

(W293)


503-503: Use double quotes

Single quotes found but double quotes are preferred.

-        new_type = column_spec['Type']
+        new_type = column_spec["Type"]
Tools
Ruff

503-503: Single quotes found but double quotes preferred

Replace single quotes with double quotes

(Q000)


494-494: Line too long

The line exceeds the maximum line length of 100 characters.

-        :param column_spec: New column specification :return: ALTER TABLE statement as a string
+        :param column_spec: New column specification
+        :return: ALTER TABLE statement as a string
Tools
Ruff

494-494: Line too long (108 > 100)

(E501)


507-511: Docstring formatting

Multi-line docstring summary should start at the first line and remove whitespace after opening quotes.

-        """
-        Execute a list of ALTER TABLE statements.
-    
+        """Execute a list of ALTER TABLE statements.
+
Tools
Ruff

507-511: Multi-line docstring summary should start at the first line

Remove whitespace after opening quotes

(D212)


509-509: Blank line contains whitespace

Remove whitespace from blank line

(W293)


509-509: Remove whitespace from blank line

Remove the unnecessary whitespace from the blank line.

-    
+
Tools
Ruff

509-509: Blank line contains whitespace

Remove whitespace from blank line

(W293)

@aaronsteers
Copy link
Contributor

aaronsteers commented Aug 9, 2024

/fix-pr

Auto-Fix Job Info

This job attempts to auto-fix any linting or formating issues. If any fixes are made,
those changes will be automatically committed and pushed back to the PR.
(This job requires that the PR author has "Allow edits from maintainers" enabled.)

PR auto-fix job started... Check job output.

✅ Changes applied successfully.

@aaronsteers aaronsteers changed the title Ensure compatible table schema by adding missing columns and expanding column sizes #321 Feat: Ensure compatible table schema by adding missing columns and expanding column sizes #321 Aug 9, 2024
@aaronsteers aaronsteers changed the title Feat: Ensure compatible table schema by adding missing columns and expanding column sizes #321 Feat: Ensure compatible table schema by adding missing columns and expanding column sizes Aug 9, 2024
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Outside diff range, codebase verification and nitpick comments (1)
airbyte/_future_cdk/sql_processor.py (1)

469-469: Fix long line issue.

The line exceeds the maximum allowed length of 100 characters.

- :return: Dictionary of existing schema with column names as keys and their specifications as values
+ :return: Dictionary of existing schema with column names as keys and their specifications
+ as values
Tools
Ruff

469-469: Line too long (107 > 100)

(E501)

Comment on lines 456 to 463
def _get_stream_schema(self, stream_name: str) -> dict:
"""Retrieve the schema for the specified stream.

:param stream_name: Name of the stream
:return: Dictionary of the stream's schema with column names as keys and their specifications as values
"""
# Implement this method to fetch the schema from the stream
pass
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implement _get_stream_schema method.

The _get_stream_schema method is not implemented. This method should fetch the schema from the stream.

Would you like me to help with implementing this method or open a GitHub issue to track this task?

Tools
Ruff

460-460: Line too long (111 > 100)

(E501)

@aaronsteers
Copy link
Contributor

@GovindHede - This is exciting! Thanks for contributing to PyAirbyte. 🙏

It looks like great progress here and I'd be excited to merge this when ready.

Lmk by tagging me if you need any assistance. I applied the /fix-pr slash command as admin on the repo - which does the equivalent of auto-fix with ruff lint and format.

In case it is helpful, you can use these CI jobs to check any issues:

  • Run Tests / Pytest (Fast) - just the fast tests, failing fast.
  • Run Tests / Pytest (No Creds) - a bit more tests, but nothing requiring creds.
  • Run Linters / Ruff Lint Check - lint/format checks.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

airbyte/_future_cdk/sql_processor.py Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add logic to _ensure_compatible_table_schema() to expand column sizes if needed.
2 participants