go backsqlschool blogs list

Length of LOB data to be replicated exceeds configured maximum 65536 when upload large blob files in filestream

by Antonios Chatzipavlis

Σε μια μεγάλη εφαρμογή που έχουμε αναπτύξει κάνουμε μεγάλη χρήση του Filestream feature που έχει ο SQL Server.

Μέχρι σήμερα τα αρχεία, κυρίως φωτογραφίες σε διάφορα formats (png, jpg, bmp) που ανέβαιναν δεν ήταν ιδιαίτερα μεγάλα.

Σήμερα όμως ήρθαμε αντιμέτωποι με το να ανεβεί ένα αρχείο που είχε μέγεθος 25ΜΒ.

Φυσικά αυτό δεν μπορούσε να γίνει καθώς δεν επιτρεπόταν από τις default ρυθμίσεις που έχει ο SQL Server καθώς αυτές θέτουν περιορισμό στα 64ΚΒ.

Η λύση που υπάρχει για αυτό ώστε να επιτρέπονται μεγαλύτερα αρχεία (2GB το μέγιστο) είναι να αλλάξεις την ρύθμιση που ορίζεται από το max text repl size configuration setting

Αν και αυτό δεν έχει να κάνει με το filestream άμεσα αλλά με το μέγιστο μέγεθος των text, ntext, varchar(max), nvarchar(max), varbinary(max), xml, image data types που γίνονται replicate ή συμμετέχουν σε CDC, όπως αναφέρουν τα BOL, παρόλα αυτά όμως με την ρύθμιση αυτή δίνεται η δυνατότητα να περάσω μεγάλα αρχεία στο filestream

Όπως ανέφερα και παραπάνω η default τιμή είναι 65536 bytes. Η μέγιστη τιμή είναι 2147483647 bytes και αν βάλεις την τιμή -1 σημαίνει unlimited (μέχρι το max φυσικά)

Η ρύθμιση αυτή δεν χρειάζεται για ισχύσει  να γίνει restart o SQL Server και για την ορίζεις αρκεί να γράψεις σε ένα νέο query window τα παρακάτω

sp_configure 'max text repl size', -1 go reconfigure go

 

Ημερομηνία: 15 December 2011 00:18
Αξιολόγηση:
Κατηγορίες:
Tags:
Share it:

Σχετικά Blog Post

Αφήστε το σχόλιο σας - Leave your comment

Τα σχόλια έχουν κλείσει.
Επιτρέπονται μόνο τα σχόλια από τα μέλη του SqlSchool.gr.


newsletter subscription

Εάν επιθυμείτε να λαμβάνετε ενημέρωση από εμάς, δώστε μας το e-mail σας.
PASS chapter logo
Official Professional Association for SQL Server (PASS) chapter for Greece
Join to PASS