4164
Views
73
Comments
Solved
The PostgreSQL Database Connector (by ardoRic)
Hello everyone,

OutSystems Platform 9 brought a new Platform API that allows anyone to implement their own database integration connector. These are fully featured connectors, as powerful as the ones included with OutSystems Platform for SQL Server, Oracle, etc. All you need to build your own connector is database and native stack (Java/.NET) expertise.

This was, for me, the most interesting capability of the OutSystems Platform 9 (aside from the awesome incorporation of REST into the platform). So I set out to build something with it.

Using the Database Integration API, I’ve built a connector for the open source DBMS PostgreSQL. You know... because reasons.

Here you can find the latest release of the ardoPostgreSQL Database Connector for the OutSystems Platform (9.0.0.6+).

With this you can use the OutSystems Platform to connect to PostgreSQL databases in the same way you are already used to: by configuring a Database Connection in Service Center, Importing the tables you need from Integration Studio, and creating a fantastic application in Service Studio.





In order to get it running on your system, simply download the ardoPGSQL.zip file and follow the instructions for your selected stack (.NET or Java). At this time the instructions should work for IIS, JEE JBoss Community 7.1.1 and EAP 6. If you mean to install this on Weblogic, please get in touch with me.

This procedure currently requires the services  (including the application server) to be down, so you will likely have downtime. After this you get a new option in the Database Connections combo box for PostgreSQL and after that it's business as usual.

The Database Integration API SDK includes a battery of 200+ unit tests that cover most of the plugin capabilities. This plugin passed (almost) all the tests, but let me know if you run into any issues. The connector is not officially supported by OutSystems, as it was created by me. For help with any issue or suggestions, get in contact with me directly through the forums or by email (ricardo.silva@outsystems.com).

Please look into the known issues list (currently one, but it can grow) for known problems and potential workarounds/ fixes.

Best regards,
Ricardo "ardoRic" Silva
2018-06-08 15-13-44
Ricardo Lopes
Staff
Solution

Dear community,

We’re thrilled to announce that we have recently released PostgreSQL Database Connector. This connector is available out-of-the-box and fully OutSystems supported from 11.15.0 and above.

If you are using the ardoPostgreSQL connector, we would like to inform you that connector is using unsupported/undocumented platform capabilities that can be changed in the future. Furthermore, with the new release, 11.15.0, we have upgraded the driver that both the platform and the ardoPostgreSQL connector are using. Preliminary tests show that ardoPostgreSQL will keep basic functionalities working. However, in order to reassure that your applications using the community base ardoPostgreSQL have not been affected, we suggest thoroughly testing your applications upon upgrade.

On the other hand, we strongly advise replacing the existing connector and related extensions with the new supported PostgreSQL connector. More information on the available documentation, but in a broad-strokes, these are the necessary steps to replace existing non-supported connector:

  1. Create a new PostgreSQL external database connection using the official connector (Service Center);

  2. Create and publish new extensions using the official connector for each extension using the third party connector, use the new database provider when configuring the logical database (Service Center);

  3. Update and Republish any modules that consume the old extensions to use the new extensions and ensure they are not left with outdated references.

  4. Test the application.

A final note on some of the advantages of the new PostgreSQL connector:

  • Fully OutSystems supported;

  • Supports Aurora and Generic PostgreSQL, versions 12 and 13;

  • Use Integration Builder with a smoother experience for selecting and configuring database connectors.

Cheers,
Integration Builder team

2021-11-16 06-48-46
Ahmad Haikal Maghrobi Syam

I wanna ask in my platform on premises (Version 11.18.1 ) why i can't define and explore 2 or more database in postgreSQL.

In servicecenter i created 1 connectionstring define database and in integration studio outsystems just show 1 database only, but when i create connstring in MSSQLServer, in integration studio can show 2 or more databases.

Can you show me how to explore just only 1 connectsting PostgreSQL and can explore 2 or more databases postgresql ?

2019-02-08 17-09-54
Ricardo Soeiro
Staff
Nicely done, congrats :)
2014-03-07 07-44-05
Arlindo Lima
Staff

For more information on what the Database Integration API and SDK are, this video (18 minutes) provides a good introduction.


Currently, the Database Integration API SDK capability is under Limited Access. We are doing a slow rollout in order to fine-tune the SDK for the general public. However, this doesn't mean the Database API is in beta. It is not. It can be used in Production.

If you would like to build your own database integration plugin, enroll in the Limited Access Program by contacting us at support@outsystems.com.

Note1: Although the SDK is fully supported but under limited access, OutSystems does not provide any support for the connectors third parties built using this SDK.

Note: in order to use ardoRic's PostgreSQL database connector you do not need the SDK. A database plugin, created with the SDK can be installed standalone. You only need the SDK if you’re planning to build your own database plugin (or modify ardoRIc’s connector).

2015-09-16 11-19-06
Jan-Hendrik van Heusden
Arlindo Lima wrote:
For more information on what the Database Integration API and SDK are, this video (18 minutes) provides a good introduction.

Currently, the Database Integration API SDK capability is under Limited Availability. We are doing a slow rollout in order to fine-tune the SDK for the general public. However, this doesn't mean the Database API is in beta. It is not. It can be used in Production.
If you would like to build your own database integration plugin, enroll in the Limited Availability Program by contacting us at product.management@outsystems.com.


Note: in order to use ardoRic's PostgreSQL database connector you don't need the SDK. A database plugin, created with the SDK can be installed standalone. You only need the SDK if you’re planning to build your own database plugin (or modify ardoRIc’s connector).
 Hi Arlindo & Ricardo,

If we want to connect to a PostgreSQL database, we are not sure how to proceed.

To connect to PostgreSQL, we need to use the Database Integration API.
  1. Is the API built-in in OutSystems, and if so, in which version? Or is it available on the Forge?
  2. As far as I can see, we do not need the Database Integration SDK. Is this correct?
  3. Do we need to enroll in the Limited Availability Program? (note that we do not plan to develop our own connector currently, we just want to connect to PostgreSQL).
  4. Can we just use the ardoPostgreSQL connector (https://github.com/ardoric/ardoPostgreSQL/releases) and use it in combination with the Database Integration API?
Thanks for the good work!
Regards, Jan-Hendrik
2018-03-08 20-43-12
Robert Chanphakeo
I'm just curious, why isn't PostgreSQL built into outsystems core platform?

There are many great companies that use PostgreSQL

  • Skype use PostgreSQL (over a billion registered users)
  • Apple use PostgreSQL
  • Sony use PostgreSQL
  • Fujitsu use PostgreSQL
  • Cisco use PostgreSQL
  • Telstra use PostgreSQL (Australia’s largest telecommunication company)
  • Optus use PostgreSQL (Australia’s 2nd largest telecommunication company)
  • plus more....and counting...

 

2014-02-13 10-06-38
Ricardo Silva
It seems like DB2 and MySQL have more people asking for it.

I'll let Arlindo answer the question more authoritively, but from what I remember, we wanted to have an Open Source database and we picked the most popular (MySQL) and we wanted a commercial database for which we picked DB2 as we had a lot of requests for it.

Since we were building the API, we figured most other databases would fit into the long tail and the community would take care of implementing them as needed.

I personally always suggested to go for PostgreSQL instead of MySQL, and would love to see how the OutSystems Platform fares with a PostgreSQL DB as a backend. Maybe one day, when there's an API we can use as there is this Integration API :)
2018-03-08 20-43-12
Robert Chanphakeo
It would be perfect if we could run PostgreSQL as a backend database! This way we can use outsystems data modeller!  

MySQL is more popular than PostgreSQL, easy to setup and manage, but it has limitations that you need to work around, whereas PostgreSQL is more advanced and more reliable than MySQL! Overall PostgreSQL is a better open sourced database.
2014-02-13 10-06-38
Ricardo Silva
Hello Jan-Hendrik,

1. The API is built-in with OutSystems 9.0.0.6+. You'll be able to use the connector in any version higher than 9.0.0.6 
2. Correct. You only need to use the SDK if you're developing your own connector, or changing mine.
3. see above. Nope.
4. Yes. Just download the latest version, follow the installation instructions and you're good to go.
2015-09-16 11-19-06
Jan-Hendrik van Heusden
Thanks for the quick reply!
2014-02-13 10-06-38
Ricardo Silva
Hello all,

The latest version of the ardoPostgreSQL database connector now extends support for Redshift clusters.

Give it a spin and drop me any feedback from real usage.
UserImage.jpg
samuel vk

Ricardo Silva wrote:

Hello all,

The latest version of the ardoPostgreSQL database connector now extends support for Redshift clusters.

Give it a spin and drop me any feedback from real usage.

ProstgreSQL is the RDBMS that comes built-in with HevoData, a unified data platform. You can effortlessly ingest both structured and unstructured data from Web Logs, Databases, Social Media, Cloud Applications and a lot more.

For more info :-   https://hevodata.com


2018-03-08 20-43-12
Robert Chanphakeo
Ricardo, your database connector should work just fine with Redshift, after all Redshift is based on postgresql 8.0.2 :) it is worth noting there are some unsupported postgresql features https://docs.aws.amazon.com/redshift/latest/dg/c_unsupported-postgresql-features.html
2012-03-16 12-21-09
João Rosado
Staff
Actually its true that Redshift is based on postgresql 8.0.2, but that version is so old that about a year ago the developer of the drivers removed all "deprecated" code.
They recently put back some of the code to make it explicitly compatible with Redshift. So RIcardo had to update the driver to a compatible version


And from the list of things Ricardo "rage" dumped on my skype from the failing sdk tests I would say that they list of unsupported features is way incomplete. :)
2018-03-08 20-43-12
Robert Chanphakeo
Joao, thanks for the insight, you should dump interesting things on my Skype too ;)
2014-02-13 10-06-38
Ricardo Silva
Yeah, I had also thought that the connector should be able to directly connect, but when I actually got a chance to try it it didn't work.

As João said, it had to do with some assumptions the npgsql code made about what was supported on the other side (they only support supported versions of postgresql, and 8.0.2 has already been End-of-Life'd since 2010), which needed to be corrected in the driver itself.

Additionally there are some other constraints. PostgreSQL adds some constraints to introspection tables, and to some functions (namely date functions like to_timestamp).

There are also some differences in behavior which might require changes to the query generation and runtime when using Redshift databases, hence my decision to make a different connector ( which inherits from the PostgreSQL one ). 

Apparently, Amazon is now providing their own drivers to connect to redshift, so I might also look into that for better compatibility.
2018-03-08 20-43-12
Robert Chanphakeo
Ricardo, yes since red shift requires some extra work and not a simple postgresql drop in database, it would make sense to use Amazon official drivers for redshift.
2018-03-08 20-43-12
Robert Chanphakeo
I am actually curious about which data modeller tool would DB's use with RedShift database, currently use Postgresql 8.0.2 supported data modellers, this is fine for now, but what about the future? will things change? (Essentially, there is a need for a reliable RedShift data modeller tool, one that lets you create ER data models, sync your ER with your database, create triggers, indexes etc - there is no such tool!)

Alternatively, if you want the power and compatibility of postgresql but the speed of RedShift, use postgresql database with Periscope.io - you get the best of both worlds :)
2014-02-13 10-06-38
Ricardo Silva
This is going a hell of a lot off-topic here with all this Redshift discussion, but one should note that while Redshift is based off PostgreSQL, it is not designed as a relational database.

Redshift is a big data, Business Intelligence, database. This is overly evident by some of the design choices in Redshift. For example, integrity constraints (unique, foreign key, primary key) are NOT enforced. SELECT FOR UPDATE is not supported, which probably means there is no locking, indicating this data is mostly to be queried but not very prepared to be transactional.

Redshift *is not* good for everyday, relational database usage.
2020-09-15 06-33-43
Arvin Reyes

Ricardo Silva wrote:

This is going a hell of a lot off-topic here with all this Redshift discussion, but one should note that while Redshift is based off PostgreSQL, it is not designed as a relational database.

Redshift is a big data, Business Intelligence, database. This is overly evident by some of the design choices in Redshift. For example, integrity constraints (unique, foreign key, primary key) are NOT enforced. SELECT FOR UPDATE is not supported, which probably means there is no locking, indicating this data is mostly to be queried but not very prepared to be transactional.

Redshift *is not* good for everyday, relational database usage.


Hi,

Just wondering if you have some workaround for the error encountered once we used Foreign Key identifier for different tables on Postgre.

2015-04-07 15-19-51
Braxton
It looks like this does not work for 9.1.0.20.
I upgraded my server today from 9.0.1.9, things using postgres broke.

I even went so far as to follow the instructions over again, deleting the old files, and pasting them from a fresh zip, and reinstalling service center.


Redshift shows up on the dropdown list, but postgres no longer does.... And now I can no longer connect to postgres databases that are linked to my primary application....


Also, when I try to edit my previously configured database that used postgres I get the following error:

Does anyone have any suggestions?

Thanks,
Braxton
2015-04-07 15-19-51
Braxton
I tried swapping out the outsystems related DLLS with new ones from 9.1.0.20 and compiling from source... But this also throws errors....
2014-02-13 10-06-38
Ricardo Silva
Hello Braxton,

There is a breaking change with the OutSystems Platform Bali which renders dll's for Database Connectors built for 9.0 unusable in 9.1.

The Database Integration API has been changed due to the adding of the Long Integer type, and previously built connectors do not work.

I have a quickfix for this (which does not yet support Long Integers) which I'm attaching to this post. You can use it to get around your problem. All you need to do is bring down the services, replace the dll's and republish service center. You'll also need to republish any module that uses the connector.

I'm sorry I haven't yet had the free time to address this correctly.

Best regards,
Ricardo Silva


ardoPGSQL_QF.zip
UserImage.jpg
Ken Hommel

Has the connector been updated to address this issue? The email below was posted on 2016-02-11; the GitHub repo was last updated shortly before that. 


Ricardo Silva wrote:

Hello Braxton,

There is a breaking change with the OutSystems Platform Bali which renders dll's for Database Connectors built for 9.0 unusable in 9.1.

The Database Integration API has been changed due to the adding of the Long Integer type, and previously built connectors do not work.

I have a quickfix for this (which does not yet support Long Integers) which I'm attaching to this post. You can use it to get around your problem. All you need to do is bring down the services, replace the dll's and republish service center. You'll also need to republish any module that uses the connector.

I'm sorry I haven't yet had the free time to address this correctly.

Best regards,
Ricardo Silva




2015-04-07 15-19-51
Braxton
Thanks for the quick response!
2016-06-15 20-04-39
Christian Reichel
Hi,

I´ve installed this connector on the Frontend and in the Controller.

I can see PostgreSQL available on the Frontend, but not on the Controller. What should I do?

I saw that the shell script installer has a different approach for the controller, not sure why though. Any tips?



2018-03-08 20-43-12
Robert Chanphakeo
Christian Reichel wrote:
Hi,

I´ve installed this connector on the Frontend and in the Controller.

I can see PostgreSQL available on the Frontend, but not on the Controller. What should I do?

I saw that the shell script installer has a different approach for the controller, not sure why though. Any tips?


 
 
" I can see PostgreSQL available on the Frontend, but not on the Controller."

Did you recompile servicecenter?

2014-02-13 10-06-38
Ricardo Silva

Hello Ken,

Yes, the version that was posted on git prior to me updating this thread should include the fix to work in P9.1.

However, I did not get around to add support for Long Integers.

Maybe it'll happen now that OutSystems 10 is out :)

2014-02-13 10-06-38
Ricardo Silva

Correction. I'm sorry but no.

The repository was not updated. Thing is, what I needed to do was rebuild the connector with a different version of the SDK and that isn't a part of the repository.

I don't believe any change to the code was required, only to one of its dependencies.

You need to download the ardoPGSQL_QF.zip which I attached to my reply to Braxton.

2021-04-21 23-06-46
Jeanene Williams

Does anyone know if the Database Integration API has been removed? Found this post and though it would be great to write a wrapper around a proprietary interface to our own system but after contacting Outsystems support the response was just sorry you cant do it :(,. 

2014-02-13 10-06-38
Ricardo Silva

The Database Integration API has not been removed.

Do you have an ADO.NET or JDBC driver for your system? If so, and if it behaves like a database, you should be able to use the Database Integration API.

2021-04-21 23-06-46
Jeanene Williams

No we don't have ado.net or jdbc drivers. I've looked through what documentation I can find and your code plus this presentation https://fast.wistia.net/embed/iframe/6aec9pc3r8?popover=true and realise that it will be hard but should be possible. The problem I'm having is that I when I try asking Outsystems support for access to the API they just keep saying "Unfortunately, as a non-supported database we don't have a workaround in order you to achieve such functionalities (scaffolding and data access)."



Ricardo Silva wrote:

The Database Integration API has not been removed.

Do you have an ADO.NET or JDBC driver for your system? If so, and if it behaves like a database, you should be able to use the Database Integration API.



2021-04-21 23-06-46
Jeanene Williams

Investigating deeper and we can create our own ado.net driver if needed.

2014-02-13 10-06-38
Ricardo Silva

In that case, and if you are confident that your system behaves like a database (has tables with attributes against whom SQL queries can be made), I suggest you to contact support asking explicitly for access to the Database Integration API.

This way you can explore this venue.

2021-04-21 23-06-46
Jeanene Williams

yeah that's what I was trying to do but didn't get anywhere. Trying again.

Ricardo Silva wrote:

In that case, and if you are confident that your system behaves like a database (has tables with attributes against whom SQL queries can be made), I suggest you to contact support asking explicitly for access to the Database Integration API.

This way you can explore this venue.



2020-11-10 23-58-16
Raphael Ranieri
 
MVP

Ricardo,

One question...

Is possible to user this plugin in my personal environment in any way?


2014-02-13 10-06-38
Ricardo Silva

No, it's not possible to add additional database integration plugins on your personal environment.

You should install the platform on-premises or buy a full fledged PaaS in order to be able to make use of this plugin.

2014-02-13 10-06-38
Ricardo Silva

To everyone who might be interested, I have just released version 1.0 of ardoPostgreSQL database integration plugin.

It's for version 10 of OutSystems and should completely conform to the same introspection standards as the built-in plugins.

All feedback is welcome :)

2024-03-25 06-19-08
Harlin Setiadarma

Good job on this plugin.

It's very useful...

Is this available for both stack?

Can you point me out how to getting started on creating database plugin myself?

Thank you very much.

2014-02-13 10-06-38
Ricardo Silva

Hello Harlin,

The plugin is available and fully supported for both .NET and Java stacks.

In order to build your own plugin you just need to get in touch with our Product Management to get access to the limited availability program surrounding the Database Integration API.

You have more information in this post from Arlindo.

2018-03-08 20-43-12
Robert Chanphakeo

Richardo,

Do we still need to do this boolean workaround in 1.0?

https://github.com/ardoric/ardoPostgreSQL/issues/2

2014-02-13 10-06-38
Ricardo Silva

yes

2018-03-08 20-43-12
Robert Chanphakeo

Ricardo Silva wrote:

yes

Great:)

By the way which postgresql version does this database connector support?

2014-02-13 10-06-38
Ricardo Silva

well, I tested it against PostgreSQL 9.4 server.

The previous version was tested against 9.1 mainly, but not much changed since then.

The language is the same, so I'd say it supports whatever the base driver supports. If you find any issue with a specific version, please let me know and I'll try and look into it.

2018-11-23 09-43-46
Carlos Henriques

Hi Ricardo,


It's possible to install this Database Connector on OutSystems Enterprise PaaS environments?

2014-02-13 10-06-38
Ricardo Silva

Last time I checked it was.

Simply make a request to Support and we'll follow up.

2018-11-23 09-43-46
Carlos Henriques

Thanks ;)

UserImage.jpg
john smith

Hi guys,


I'm running Outsystems Development Env 10 and have  downloaded and installed PostgreSQL but can't see it available in the service centre to select it?


Thanks 

2014-02-13 10-06-38
Ricardo Silva

Hello John,

I notice you placed the same question on this thread. I'll reply there to avoid cluttering this thread with troubleshooting.

Best regards,

Ricardo Silva

2017-02-23 11-12-25
Eric Halim

So quoting several post on this thread. Is it now possible to install OS platform with postgresql as system db?

And just curious why the plugin is only on github but not on forge?

2014-02-13 10-06-38
Ricardo Silva

Hello Eric,

No, still not possible to install the platform in PostgreSQL. This connector only allows you to integrate with PostgreSQL external databases.

The plugin is not on the Forge because the Forge is for modules (espaces, extensions, applications). It does not support this kind of plugins.

UserImage.jpg
Wayne Morgan

Ricardo Silva wrote:

Hello Eric,

No, still not possible to install the platform in PostgreSQL. This connector only allows you to integrate with PostgreSQL external databases.

The plugin is not on the Forge because the Forge is for modules (espaces, extensions, applications). It does not support this kind of plugins.


Any plans for a Sybase Connector ?  

2017-02-23 11-12-25
Eric Halim

IC thanks @Ricardo Silva

2018-06-01 14-37-59
Rebecca Hall

We were able to install this connector on our Development & QA environments with no issues.  However, when we try publishing to our pre-production environment, we are getting this error:

An error occurred while publishing the Extension: System.InvalidOperationException: Internal Error: Invalid compiler output.
No provider registered for key ardoPGSQL

   at #mgc.#Ogc.#0ec(#Rt extension, OutSystemsCompilerWrapper outSystemsCompilerWrapper, HEMessageArrayList messages, String& updatePublicElementSQLTemplate, IEnumerable`1& extraDependencyFiles)
   at OutSystems.HubEdition.DeploymentController.Extensions.XIFPublisher.PublishExtension(ExtensionCaches extensionCaches, OutSystemsCompilerWrapper outSystemsCompilerWrapper, Int32 extensionVersionId, Int32 developerId, Boolean switchPublishedVersion, ICompilerContext context, Boolean fromSolutionPublish, String& extensionName, HEMessageArrayList& messages)


Is there somewhere we need to look to troubleshoot and resolve the issue?

2014-02-13 10-06-38
Ricardo Silva

Hello Rebecca,

Almost every time I saw this issue it was due to the DLL being blocked.

You should go to C:\Program Files\OutSystems\Platform Server\plugins\database, right click the DLL and check the Unblock checkbox



2018-06-01 14-37-59
Rebecca Hall

Ricardo Silva wrote:

Hello Rebecca,

Almost every time I saw this issue it was due to the DLL being blocked.

You should go to C:\Program Files\OutSystems\Platform Server\plugins\database, right click the DLL and check the Unblock checkbox



This solved the problem.  The files were blocked and once we restarted the services it worked perfectly.  Thanks for your time.


UserImage.jpg
Ravikumar G

Hello ,


Can you please help me some one to resolve the slimier error.

Actually we have developed a customer database connection for Informix database, It was working well, but after updating the Oustystems version we have reconfigured the plugin again after we start getting the error only when publishing the application, during the development time I can able to connect the database and able to preview the records from database but when run the published app getting following error.


Timer SyncEcommerceOrderFromSirius error (inside action 'SyncShippingListFromSirius'). Timer duration = 0 secs:No provider registered for key Informix [retry 3 of 3 scheduled]

Environment InformationeSpaceVer: Id=73777, PubId=0, CompiledWith=11.21.0.39357RequestUrl: http://127.0.0.1/OMS_Core/_TimerHandler.asmx (Method: POST)AppDomain: /LM/W3SVC/1/ROOT/OMS_Core-66-133319271271494541FilePath: E:\...\PS\running\OMS_Core.02138652636\ClientIp: 127.0.0.1Locale: en-USDateFormat: dd-MM-yyyyPID: 4484 ('w3wp', Started='22/06/2023 13:45:12', Priv=1516Mb, Virt=2108090Mb)TID: 11Thread Name:.NET: 4.0.30319.42000

OutSystems.HubEdition.DatabaseAbstractionLayer.Platform.Configuration.DatabaseSettingsSerialization+ConfigurationUnWrapException: No provider registered for key Informix ---> System.InvalidOperationException: No provider registered for key Informix
   at OutSystems.RuntimeCommon.Extensibility.Plugins.AbstractPluginProvider`2.OnMissingPluginImplementation(KeyType providerKey)
   at OutSystems.RuntimeCommon.Extensibility.Plugins.AbstractPluginProvider`2.GetImplementation(KeyType providerKey, Func`2 OnMissingPluginImplementationOverride)
   at OutSystems.Internal.Db.DatabaseAccess.<>c.rpf#wkdcsrcj(DatabaseProviderKey bv)
   at OutSystems.HubEdition.DatabaseAbstractionLayer.Platform.Configuration.IntegrationDeserializer.Deserialize(String serialized, Func`2 valueDecrypter)
   --- End of inner exception stack trace ---
   at OutSystems.HubEdition.DatabaseAbstractionLayer.Platform.Configuration.IntegrationDeserializer.Deserialize(String serialized, Func`2 valueDecrypter)
   at rpf#tcuerhba.rpf#yrtwlspp[e,f,g](e dk, String dl, Func`2 dm, Action`2 dn, g dp)
   at OutSystems.Internal.Db.DatabaseAccess.rpf#hdmucdlp(String bh)
   at OutSystems.Internal.Db.DatabaseAccess.GetDBConnectionProvider(String connectionName)
   at ssOMS_Core.Actions.FuncActionSyncShippingListFromSirius.datasetGetEcEncomendaBoxes(HeContext heContext, Int32 maxRecords, IterationMultiplicity multiplicity, Int64& outParamCount)
   at ssOMS_Core.Actions.ActionSyncShippingListFromSirius(HeContext heContext)
   at ssOMS_Core.TimerSyncEcommerceOrderFromSirius.Execute(HeContext heContext, Int32 timeout) 

UserImage.jpg
Matthew Blacklidge

Hi all,


Just wondering if you have hit any issues using an AWS RDS hosted postgres database where the force.SSL parameter is true. Even though I include 'ssl=true' or 'sslmode = require' in my connections string it still fails were that string works in pgAdmin.

The only workaround I have found is to turn off the paremeter on my RDS, which is not ideal.

Thanks in advance

2014-02-13 10-06-38
Ricardo Silva

Hello Arvin,

I'm not aware of any error to happen when you use a foreign key.

The error you are getting seems to be related to the underlying type. For some reason it seems to be marked as Text when it should be "Long Integer".

You should be able to correct this in Integration Studio by changing the data type for the column.

If you're still having troubles with this, drop me a PM (this thread should not be used for troubleshooting).

Best regards,

2023-02-13 15-34-45
BabyBear

Hi 

we are encountering some issues regarding this.


we have set the statement_timeout to 0 but we are still encountering the error

cancelling statement due to statement timeout

UserImage.jpg
Scott Finkle

Ricardo,

Do the installation instructions apply to those of us using the Personal Environment?  To my knowledge we don't have the ability to stop/start Outsystems services including IIS being that it's hosted in cloud.

Thanks,

Scott

2020-02-28 09-46-54
Eduardo Jauch

Hi Scott,

No, it is not possible to do this in Personals.

From Ricardo answer above:

"No, it's not possible to add additional database integration plugins on your personal environment.

You should install the platform on-premises or buy a full fledged PaaS in order to be able to make use of this plugin."

Cheers

2017-10-30 11-03-48
Tolli

Hi,

I've been using this connector on OutSystems 10 for some months without problems.

Now we're considering upgrading to OutSystems 11, so I'm curious if anyone has already tried that out.  Have there been any changes to the Database Integration API, or can we expect smooth sailing after upgrade? Do we perhaps need to perform a re-install?

Best regards,

Tolli

2017-10-30 11-03-48
Tolli

Tolli wrote:

Hi,

I've been using this connector on OutSystems 10 for some months without problems.

Now we're considering upgrading to OutSystems 11, so I'm curious if anyone has already tried that out.  Have there been any changes to the Database Integration API, or can we expect smooth sailing after upgrade? Do we perhaps need to perform a re-install?

Best regards,

Tolli

Following up on this - for various other reasons (new OS, lifetime moved to separate server, ...) we installed everything on fresh servers (using the same databases) - and installation of the PostgreSQL connector, and subsequent usage, worked like a charm. :)

Best regards,
Tolli


2020-06-04 14-36-35
Viki

Hello,


I am trying to develop a connector for informix as similar to ardopostgresql.

I am using outsystems 11.  When i deploy to platform server and compiling the espace i getting the below exception. Could any one help on this error. Thanks in Advance.

[Error] Internal Error
Compilation Error.
referencesProxy\Extension_IntegrationStudio_proxy.cs(23,22):
error CS0012: The type 'System.Object' is defined in an assembly that is not referenced. You must add a reference to assembly 'netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'.
public partial class RssExtensionIntegrationStudio {
bin\OutSystems.RuntimeCommon.dll: (Location of symbol related to previous error)

bin\OutSystems.HubEdition.RuntimePlatform.dll: (Location of symbol related to previous error)

2020-02-28 09-46-54
Eduardo Jauch

Hello Vikram,

It's always better to create a new topic.

The error, it seems, is because you are using an assembly, in your extension, but you forgot to add it to the extension Resources folder.
Any external assembly must be referenced there, or it will not be sent to the server when you are publishing the extension and you will have errors like this.

Hope this helps.

Cheers. 


2020-06-04 14-36-35
Viki

Eduardo Jauch wrote:

Ok. I will create a new topic.


But i am not any of the external libraries. I am only referencing the below libraries and for your information this is not a extension which is more like the ardopostgresql which is the database connector globally.


 

Hello Vikram,

It's always better to create a new topic.

The error, it seems, is because you are using an assembly, in your extension, but you forgot to add it to the extension Resources folder.
Any external assembly must be referenced there, or it will not be sent to the server when you are publishing the extension and you will have errors like this.

Hope this helps.

Cheers. 




2020-02-28 09-46-54
Eduardo Jauch

Fair enough, Vikram,

Never did a connector. I assumed it used an Extension.
Indeed. Looking more closely to the error, it seems it is missing the netstandard 2.0.0.0 assembly

Here is some discussion and possible solution: https://github.com/dotnet/standard/issues/542

2020-06-04 14-36-35
Viki

Eduardo Jauch wrote:

I already tried adding as a nuget package and also as a reference include option. But it didn't work.

I curious about how we need to add the reference assembly to the web config dynamically. Because each time it is compiling and hosting a new folder of the service center.


Could any one help me on that?

Fair enough, Vikram,

Never did a connector. I assumed it used an Extension.
Indeed. Looking more closely to the error, it seems it is missing the netstandard 2.0.0.0 assembly

Here is some discussion and possible solution: https://github.com/dotnet/standard/issues/542



2020-02-28 09-46-54
Eduardo Jauch

Hi,

I would say the best option now is to create a new post (to gain visibility).
But also, to create a ticket with the support, as they will probably have the answer for that as well.

Cheers. 

2015-04-28 21-48-34
Roberto Demestri

Is there an issue accesing views? Only the tables are listed on the wizzard.

The user permissions seems to be OK (accesing from pgadmin works fine to access and query the views).

OS11 (.Net) + PG9.6 

Regards.

UserImage.jpg
Nikhil Malalikar

Hi,

Are there any sample exercises or sample server/hosts to practice using POSTgresql.

2018-06-08 15-13-44
Ricardo Lopes
Staff
Solution

Dear community,

We’re thrilled to announce that we have recently released PostgreSQL Database Connector. This connector is available out-of-the-box and fully OutSystems supported from 11.15.0 and above.

If you are using the ardoPostgreSQL connector, we would like to inform you that connector is using unsupported/undocumented platform capabilities that can be changed in the future. Furthermore, with the new release, 11.15.0, we have upgraded the driver that both the platform and the ardoPostgreSQL connector are using. Preliminary tests show that ardoPostgreSQL will keep basic functionalities working. However, in order to reassure that your applications using the community base ardoPostgreSQL have not been affected, we suggest thoroughly testing your applications upon upgrade.

On the other hand, we strongly advise replacing the existing connector and related extensions with the new supported PostgreSQL connector. More information on the available documentation, but in a broad-strokes, these are the necessary steps to replace existing non-supported connector:

  1. Create a new PostgreSQL external database connection using the official connector (Service Center);

  2. Create and publish new extensions using the official connector for each extension using the third party connector, use the new database provider when configuring the logical database (Service Center);

  3. Update and Republish any modules that consume the old extensions to use the new extensions and ensure they are not left with outdated references.

  4. Test the application.

A final note on some of the advantages of the new PostgreSQL connector:

  • Fully OutSystems supported;

  • Supports Aurora and Generic PostgreSQL, versions 12 and 13;

  • Use Integration Builder with a smoother experience for selecting and configuring database connectors.

Cheers,
Integration Builder team

2021-11-16 06-48-46
Ahmad Haikal Maghrobi Syam

I wanna ask in my platform on premises (Version 11.18.1 ) why i can't define and explore 2 or more database in postgreSQL.

In servicecenter i created 1 connectionstring define database and in integration studio outsystems just show 1 database only, but when i create connstring in MSSQLServer, in integration studio can show 2 or more databases.

Can you show me how to explore just only 1 connectsting PostgreSQL and can explore 2 or more databases postgresql ?

UserImage.jpg
Ravikumar G

https://success.outsystems.com/support/release_notes/11/outsystems_11_side_effects_and_breaking_changes/#introduced-in-platform-server-11.18.0


Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.