Errors in SQL Server while importing CSV file despite varchar(MAX)

You can use CSV or TEXT files for data transfers with Sql Server Management Studio. If the nvarchar fields in the table you will import are defined as MAX, you may see an error message.

You go through the Import Wizard and finally try to import the file you get the following error report:

Executing (Error) Messages
Error 0xc02020a1: Data Flow Task 1: Data conversion failed. The data conversion for column “”Detail”” returned status value 4 and status text “Text was truncated or one or more characters had no match in the target code page.”.

(SQL Server Import and Export Wizard)

Error 0xc020902a: Data Flow Task 1: The “Source – Sample_csv.Outputs[Flat File Source Output].Columns[“Detail”]” failed because truncation occurred, and the truncation row disposition on “Source – Sample_csv.Outputs[Flat File Source Output].Columns[“Detail”]” specifies failure on truncation. A truncation error occurred on the specified object of the specified component.

(SQL Server Import and Export Wizard)

Error 0xc0202092: Data Flow Task 1: An error occurred while processing file “C:\Sample.csv” on data row 2.

(SQL Server Import and Export Wizard)

Error 0xc0047038: Data Flow Task 1: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on Source – Sample_csv returned error code 0xC0202092. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.

(SQL Server Import and Export Wizard)

To solve the problem, go to the “Advanced” tab on the source screen where you have selected FLAT File, select “DT_TEXT” instead of “DT_STR” and continue the process.

Slow Internet Connection – Pulse Secure

If you need to use Pulse Secure for VPN, you are likely to have experienced a problem. Your internet connection is slower than ever and you will find that resources cannot be downloaded on many websites. The problem can be experienced due to the wireless hardware used in Windows 10 Redstone 3 and above versions and some Dell and HP model computers. When you want to test your internet speed, you can see that your download speed is even below your upload speed.

The solution

Solution 1

Go to your network adapter settings and navigate to the properties with a right click. You can type Start> Run> ncpa.cpl for this. Make sure that the checkbox next to “Juniper Network Service”, among the adapter features on the screen that opens, is not selected and save the settings. Then, when you make VPN again, you will be able to use your internet speed correctly.

Solution 2

It is necessary to disable the RSC service. You can do a similar operation with PowerShell. Run the following command in a PowerShell console opened in run as administrator mode.

“Wifi 2” is your adapter name. You can run the command below to get this name.

 

Deleting RBS (Remote Blob Storage) Data on Disk (SharePoint)

There are two options to store your content data of your applications on your Microsoft SharePoint environment.

Default

This option stores the files uploaded to the site as binary content in content database tables. With this option active, default settings of SharePoint recycle bin will be in use when deleting content. These settings — described in details below — keeps the deleted content in content database and enables you to restore it even after 60 days (default value is 30 + 30 days).

RBS (Remote Blob Storage)

Remote Blob Storage is a whole other subject and we will focus on some of the problems we face on this subject. To learn more about RBS, I recommend reading this article: https://docs.microsoft.com/en-us/sharepoint/administration/rbs-overview

If I have to briefly explain, it is about storing binary BLOB data which is stored in content database by default outside of content database. In the case where RBS is used, default recycle bin in SharePoint works the same way, however in addition to the default setting of 30 + 30 days, garbage collection process of RBS must be performed. Otherwise, deleted SharePoint content will continue to take up space on the disk.

Workflow Manager Migration

Workflow Manager Server is a technology that is used to host high-scale, high-density workflows. It allows you to develop workflows as declarative model. In other words, there is no code in the workflows to be developed, only their declarations. It is aimed to apply business logic to the flow by communicating with the background systems over the services. It is built on Microsoft .Net Framework 4.5 and Windows Workflow Foundation.

The general use of Workflow Manager is running SharePoint Workflows on Microsoft SharePoint Server. Although Workflow Manager is not a technology created for SharePoint, it is mainly used with SharePoint product.

It works in Farm topology. So, just like SharePoint or Exchange Server farms, you perform a farm configuration after the initial server setup. Then, you can add servers to this farm that you created by installing applications on new servers. If we talk about SharePoint specific, you can also install directly on servers that have SharePoint Server installed without a separate server. (Not recommended, however)

After a brief summary about Workflow Manager, I would like to come to the main issue I want to address in this article. As with all server applications, you may want to move Workflow Manager to a different environment over the server that it is currently configured. Your reasons may be one of the following;

  • After the difficulties experienced in the current environment, you could not be able to make in-place corrections and you want to re-install.
  • After an architectural decision, you may want to install Workflow Manager as a separate farm.
  • After a disaster scenario, you may only have up-to-date Workflow Manager databases and want to continue your work with a new configuration.
  • You may want to renew the configuration due to infrastructure operations such as Windows upgrade, domain upgrade / change etc. in the installed environment.

It is possible to increase these reasons. Basically, re-installing and configuring an application does not seem like a serious problem. However, when it comes to a structure like Workflow Manager, one of the important issue is business continuity. You can have dozens of workflows that have been deployed on their existing setup, and thousands of instances of these workflows associated with SharePoint lists and libraries. Of course, you will not want to re-deploy all of your workflows, nor to lose the ongoing instances and restart them. At this point, it is significant to configure a healthy environment and to ensure that the existing farm works with ongoing instances of this environment.

To perform this process, we first need to define our prerequisites.

Workflow Manager Certificate Expiration

If you are using Workflow Manager 1.0 on SharePoint, you may face problems of workflows failing to run due to unexpected expiration of Workflow Manager and Service Bus certificates 5 years after the initial setup. This happens because the certificates that are generated during the setup do not get updated automatically after they expire. It may appear to be a minor issue which could be resolved by renewing the certificate, however you will get stuck once Workflow Manager expires and stops you from renewing.

Even though renewing certificates is not a difficult task, it may get complicated once you are prohibited to renew them after they expire. The reason is while active, Workflow Manager PowerShell checks certificates and it is not possible to establish connection between farms and Workflow Manager with an expired certificate. The error message you will receive while working with PowerShell and in the SharePoint logs will be as follows:

“Certificate requested with thumbprint … not found in the certificate store”

RBS (Remote Blob Storage) Verisinin Disk Üzerinden Silinmesi (SharePoint)

Varsayılan

RBS (Remote Blob Storage)

Workflow Manager Server Migration

Workflow Manager Server yüksek ölçekli, yüksek yoğunluklu iş akışlarını barındırmak için kullanılmakta olan bir teknolojidir. Bildirim tabanlı (declarative) bir modelde geliştirme yapmanıza izin verir. Yani geliştirdiğiniz iş akışlarında kod barınmaz, sadece deklerasyonları barınır. Arka plan sistemleri ile servisler üzerinden haberleşerek iş mantığının akışa uygulanması amaçlanır. Microsoft .Net Framework 4.5 ve Windows Workflow Foundation üzerinde inşa edilmiştir.

Workflow Manager’ın genel kullanımı Microsoft SharePoint Server üzerinde SharePoint Workflow’larını çalıştırmaya yöneliktir. Aslında Workflow Manager, SharePoint için yaratılmış bir yapı değildir ancak genel kullanımına baktığımızda ağırlıklı olarak SharePoint ürünü ile beraber kullanıldığını gözlemliyoruz.

Topolojik olarak bir farm mantığında çalışır. Yani tıpkı SharePoint veya Exchange Server farmlarında olduğu gibi ilk sunucu kurulumundan sonra bir farm yapılandırması gerçekleştirirsiniz. Ardından yeni sunucular üzerinde de uygulama kurulumlarını yaparak oluşturduğunuz bu farma ekleyebilirsiniz. SharePoint özelinde bahsedecek olursak, ayrı bir sunucu olmadan doğrudan SharePoint Server kurulu olan sunuculara da kurulum gerçekleştirebilirsiniz. (Ancak önerilmez)

Workflow Manager hakkında kısa bir özetten sonra bu yazıda değinmek istediğim konuya gelmek isterim. Tüm sunucu uygulamalarında olabileceği gibi farklı nedenlerle Workflow Manager’I da mevcutta konfigüre edildiği sunucu üzerinden farklı bir ortama taşımak isteyebilirsiniz. Nedenleriniz aşağıdakilerden biri olabilir;

  • Mevcut ortamda yaşanan sıkıntılar sonrasında in-place düzeltme işlemlerini yapamıyor ve yeniden kurulum yapmak istiyor olabilirsiniz.
  • Alınan mimari bir karar sonrası Workflow Manager’I ayrı bir farm olarak değerlendirmek istiyor olabilirsiniz.
  • Bir felaket senaryosu sonrası elinizde sadece güncel Workflow Manager veritabanları kalmış olabilir ve yeni bir yapılandırma ile çalışmalarınıza devam etmek istiyor olabilirsiniz.
  • Kurulu bulunan ortamda Windows upgrade, domain upgrade/change, vb sistemsel altyapı çalışmaları yapılacak olması sebebiyle konfigürasyonu yenilemek istiyor olabilirsiniz.

Bu nedenleri artırmak mümkün. Temel olarak bir uygulamanın yeniden kurulması ve konfigüre edilmesi çok ciddi bir sorun gibi görünmüyor. Ancak sözkonusu olan iş akışlarını barındıran Workflow Manager gibi bir yapı olduğunda önemli olan konulardan biri de iş sürekliliği. Mevcut kurulumunu üzerinde yaygınlaştırılmış olan onlarca iş akışınız ve bu iş akışlarının SharePoint liste ve kütüphaneleri ile ilişkili binlerce devam örneği (instance) olabilir. Elbette ne tüm akışlarınızı yeniden yaygınlaştırmak isteyeceksiniz ne de devam eden örnekleri kaybedip tüm örnekleri yeniden başlatmayı. Bu noktada sağlıklı bir ortam kurmak ve mevcut yapının bu ortam üzerinde devam eden örnekleri ile beraber çalışmasını sağlamak önem taşıyor.

Bu işlemi gerçekleştirmek için öncelikle ön gereksinimlerimizi tanımlamamız gerekiyor.

Workflow Manager Certificate Expiration

SharePoint ortamınızda iş akışı hizmeti için Workflow Manager 1.0 kullanıyorsanız ilk kurulumunuzdan itibaren 5 yıl sonunda ansızın Workflow Manager ve Service Bus sertifikalarının expire olması nedeniyle iş akışlarınızın çalışmaması problemi ile karşılaşabilirsiniz. Çünkü kurulum esnasında otomatik oluşturulan sertifikaların süresi 5 yıl ve otomatik olarak yenilenmiyor. Çok klasik bir sertifika expire problemi gibi görünse ve hızlıca yeni bir sertifika yardımıyla sorunu aşabileceğinizi düşünsenizde Workflow Manager’ın süresi geçtikten sonra sertifika yenilemenize izin vermemesi ile bu sorunda çıkmaza girebilirsiniz.

Evet maalesef Workflow Manager sertifikalarının yenilenmesi çok basit bir işlem olsa da sertifika expire olduktan sonra bu işlemi gerçekleştirmenize izin verilmiyor. Çünkü Workflow Manager PowerShell yapısı çalışırken sertifika kontrolü yapıyor ve süresi geçmiş bir sertifika ile Workflow Manager farm bağlantısını yapamıyorsunuz. SharePoint loglarında ve işlem yapmak için PowerShell kullanırken alacağınız hata şöyle birşey olacaktır.

“Certificate requested with thumbprint … not found in the certificate store”

Maalesef Workflow Manager sertifika expire tarihi yaklaşırken bir uyarı vermiyor ve tabi 5 yıllık bir periyot için ilk kurulum yaptığınızda kendinize bir hatırlatıcı koymanızda çok uygulanabilir bir işlem değil. Bu nedenle genellikle iş işten geçtikten sonra haberdar oluyoruz.

Bu durumu çeşitli forumlarda aradığınızda genellikle uygulamanız gereken yöntem olarak önerilen yöntemi, yani Workflow Manager farmını yeniden yapılandırmanız ve eski verileri buraya taşımanız önerisini bulacaksınız. Evet bu önerilen yöntem ancak yazıldığı kadar kolay bir operasyon olmayacak 🙂

Sorunu çözmek için hemen aklımıza gelen yöntemlerden birisi de tarihi geri almak ve sertifika değişimini gerçekleştirip yolumuza devam etmek. Burada bu yöntemi işlem adımları şeklinde detaylandırmak istiyorum.

Pulse Secure VPN Sonrası İnternet Bağlantısının Yavaşlaması

Eğer VPN için Pulse Secure kullanmanız gerekiyorsa benim de yaşadığım bir sorunu yaşamış olma ihtimaliniz var. İnternet bağlantınız hiç olmadığı kadar yavaş ve birçok internet sitesinde kaynakların indirilemediğini gözlemleyeceksiniz. Windows 10 Redstone 3 ve üzeri versiyonlarda ve bazı Dell ve HP model bilgisayarlarda kullanılan wireless donanımı nedeniyle yaşanabiliyor sorun. İnternet hızınızı test etmek istediğinizde download hızınızın upload hızınızın bile altında olduğunu görebiliyorsunuz.

Sorunun çözümü için iki yol önerilmiş;

Çözüm 1

Network adaptör ayarlarınıza gidin ve sağ tık ile özelliklerine gelin. Bunun için Start > Run > ncpa.cpl yazabilirsiniz. Açılan ekrandaki adaptör özelliklerinden “Juniper Network Service” yanında yer alan checkbox’ın seçili olmamasını sağlayın ve ayarları kaydedin. Sonrasında yeniden VPN yaptığınızda sorun olmadan internet hızınızı doğru bir şekilde kullanabileceksiniz.

Çözüm 2

RSC servisini disable etmek gerekiyor. PowerShell ile benzer bir işlemi yapabilirsiniz. Aşağıdaki komutu run as administrator modda açılmış bir PowerShell konsolunda çalıştırın.

Buradaki Wifi 2 adaptör isminiz. Bu ismi elde etmek için aşağıdaki komutu çalıştırabilirsiniz.