1. Roland Smith
  2. PowerBuilder
  3. Tuesday, 15 August 2023 15:29 PM UTC

PowerBuilder 2022 Build 1892

SQL Server using MSOLEDBSQL19 database driver.

A customer reports that the print payroll checks process that runs in 5 minutes with locally installed app takes 40 minutes when run via RemoteApp. The previous version of our app didn't have this issue. It was PB 2019 Build 2170 and used the SNC database driver.

This process does a SaveAs to PDF, reads it into a blob, and stores it in the database. I did a simple test to compare generating the PDF using Ghostscript, NativePDF to file, and NativePDF direct to blob. Local and remote timings were different but not enough to explain the process taking 8 times as long.

Does anyone have any ideas on what to look for?

 

Miguel Leeuwe Accepted Answer Pending Moderation
  1. Tuesday, 15 August 2023 15:38 PM UTC
  2. PowerBuilder
  3. # 1

Hi Roland,

Seems to me it might be the different SQL server driver ? Can you try with the SNC driver? Any dbparm values that might speed up the blob operations with the MSOLEDB?

regards

Comment
There are no comments made yet.
mike S Accepted Answer Pending Moderation
  1. Tuesday, 15 August 2023 17:51 PM UTC
  2. PowerBuilder
  3. # 2

it sounds like printer driver. 

Is it using the user's local printer driver to generate the pdf (the pdf process renders the pdf based on the printer)?  do they have a printer locally?

maybe your comparison test was either a lot faster (higher speed internet) or maybe a different printer setting?

Comment
  1. Roland Smith
  2. Tuesday, 15 August 2023 18:04 PM UTC
The process is doing a SaveAs to PDF (Ghostscript) in the user's temp folder and then reading it into a blob which then gets stored to the database.



My special test used a one page report and had three loops 100 times each:



Ghostscript to file: local 72 seconds, remoteapp 149 seconds

NativePDF to file: local 41 seconds, remoteapp 149 seconds

SaveNativePDFToBlob: local 38, remoteapp 103 seconds



The report was retrieved once before timing started and there was no SQL during the tests. I'm going to try to create a SNC login profile so I can choose between SNC and MSO on the login window.
  1. Helpful
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.