আমরা যে অ্যাপটিটি তৈরি করছি সেটি সম্ভবত একটি বড় সন্নিবেশ অনুসন্ধানগুলি কার্যকর করতে পারে। আমার পোস্টগ্রিজ ক্যোয়ারিতে কেবলমাত্র একটি নির্দিষ্ট সংখ্যক অক্ষর থাকতে পারে?
আমরা যে অ্যাপটিটি তৈরি করছি সেটি সম্ভবত একটি বড় সন্নিবেশ অনুসন্ধানগুলি কার্যকর করতে পারে। আমার পোস্টগ্রিজ ক্যোয়ারিতে কেবলমাত্র একটি নির্দিষ্ট সংখ্যক অক্ষর থাকতে পারে?
উত্তর:
বর্তমান পোস্টগ্রেএসকিউএল সংস্করণে (9.5 অবধি), কোয়েরিগুলি একটি বাফারেন্ডে ব্যাকএন্ডের দ্বারা প্রাপ্ত হয় Stringinfo
, যা সীমাবদ্ধ MaxAllocSize
, এটি সংজ্ঞায়িত:
#define MaxAllocSize ((Size) 0x3fffffff) /* 1 gigabyte - 1 */
(দেখুন http://doক্স.postgresql.org/memutils_8h.html )
সুতরাং একটি ক্যোয়ারী 1 গিগাবাইট (2 ^ 30) আকারে সীমাবদ্ধ , শূন্য নাইট বাইটের জন্য বিয়োগ 1 বাইট।
যদি কোনও ক্লায়েন্ট বৃহত্তর ক্যোয়ারী প্রেরণ করার চেষ্টা করে তবে এর মতো দেখতে একটি ত্রুটি ফিরে আসবে:
ত্রুটি: আউট মেমরি
বিস্তারিত: Enlarge স্ট্রিং বাফার দ্বারা 0 বাইটের ধারণকারী করা যাবে না এন আরো বাইট।
N
কোয়েরির আকারটি কোথায় ।
সচেতন থাকুন যে ঠিক নীচে একটি প্রশ্নের 1GB
জন্য সেই 1GB
বাফার ছাড়াও বড় পরিমাণে মেমরি পার্স করা, পরিকল্পনা করা বা সম্পাদন করতে হবে ।
আপনার যদি কোনও ক্যারিয়ারে আক্ষরিক একটি বৃহত সিরিজ ঠেলা প্রয়োজন, একটি অস্থায়ী টেবিল তৈরির বিকল্পটি বিবেচনা করুন, এর মধ্যে COPY
সারি করুন এবং মূল ক্যোয়ারীটি সেই অস্থায়ী সারণিকে উল্লেখ করুন।