Azure / Azure/Azure-DataFactory

Error while copying data from sql server to adls gen2 in ORC format

Aperta
#166 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
PowerShell
Stelle
529
Fork
623
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

I have created a dynamic pipeline for copying data from SQL Server to ADLS Gen 2 in ORC format.

As per the requirement, column names can have special characters (allowed in SQL server) and Parquet and AVRO are not able to handle them, hence ORC format is used. For Example whitespace in column name is not supported in Parquet and AVRO.

An error occurs when the source table has a column name with "," character.

PFB details of error occurred in the pipeline run
{
"errorCode": "2200",
"message": "Failure happened on 'Sink' side. ErrorCode=ParquetJavaInvocationException,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=An error occurred when invoking java, message: java.lang.IndexOutOfBoundsException:Index: 6, Size: 6.,Source=Microsoft.DataTransfer.Common,''Type=Microsoft.DataTransfer.Richfile.JniExt.JavaBridgeException,Message=,Source=Microsoft.DataTransfer.Richfile.HiveOrcBridge,'",
"failureType": "UserError",
"target": "",
"details": []
}

Since the error message is ambiguous and there is no documentation for ORC format not supporting character "," assuming it a bug.

Sample table schema in SQL server:

DROP TABLE IF EXISTS SAMPLE_DATA

CREATE TABLE SAMPLE_DATA (
[FIRST,MIDDLE NAME] VARCHAR(15)
,[LAST NAME] VARCHAR(15)
,[AGE] INT
)

INSERT INTO SAMPLE_DATA(
[FIRST,MIDDLE NAME]
,[LAST NAME]
,[AGE])
VALUES ('POOJAN RAMESH','KOTHARI',25)
![image](https://user-images.githubusercontent.com/52167271/76930815-5fbdff80-690d-11ea-9fcb-858529441a93.png)

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia riproducendo la pipeline dinamica da SQL Server ad ADLS Gen 2 in formato ORC utilizzando lo schema SAMPLE_DATA, in particolare la colonna che contiene una virgola. Confronta l’errore risultante con il comportamento di Parquet e Avro e consulta la documentazione disponibile sul formato ORC. Il lavoro è completato quando si determina se il nome della colonna non è supportato o se la pipeline contiene un bug, documentando quindi il comportamento supportato e un errore azionabile.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
azure, sql
Ambito
cloud, data-engineering, databases
Tipo di issue
Bug
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.