6 Replies Latest reply on Jan 10, 2019 4:20 PM by blafond

    Which Version of Teiid Wildfly to use with Teiid Designer / or how to correctly configure the Eclipse environment

    cjohn001

      This request is related to [TEIID-5545] Odata V4 Batch processing does not work as teiid/olingo rejects "Accept: multipart/mixed" request header - …  . As my question here goes a little bit of topic from the original Jira issue, I decided to follow up in a separate discussion on the topic.

       

      I am currently working with Teiid Designer 11.1.3. The documentation on Teiid Wildfly Downloads | Teiid  says, that:

       

      "Teiid Designer is optional Eclipse based tooling for creation of VDBs in a modeling environment. Note that Teiid Designer currently works with only Teiid 9.0 and earlier. However VDBs developed against a Teiid 9.0 environment will still be valid for deployment into later releases."

       

      My production environment is based on a mysql v8 database served by Teiid Wildfly 11.2.0. Due to the previous note on Teiid 9 and some issues I had throughout working with Teiid-Designer I switched my development environment to a Teiid 9.0 server where the server is used to create vdb's with Teiid-Designer by using "Import from Teiid connection" . All my development efforts are currently done against the Teiid 9 instance.

      I also have to note, that Teiid, the database, and Teiid-Designer are all running on the same laptop and that I do not want to have 2 Teiid instances with different server versions running in parallel at the same time (probably possible by adapting port mappings, but I have not tried). 

      As I like to update the Olingo Plugin now in Teiid 11 to support advanced batching features and this seems to be not easily done for Teiid 9, my Teiid 9 and 11 instances would run out of sync as those would support a different odata feature set. Hence, for development efforts I would steadily have to switch between the different-versioned Teiid server instances.

       

      By doing some experiments with Teiid 11 and Teiid Designer to create vdb's, I found out that I might have a thinking error when using Teiid Designer. My hope is that I simply misinterpreted the statement about compatibility between Teiid-Designer and Teiid 9 on the Teiid Community Website, and that I can in fact also use Teiid Wildfly 11.2.0 with Teiid-Designer, to get rid of the Teiid 9 server instance. The following screenshot depicts my Designer configuration

       

       

       

      As you can see in the upper right red rectangle, I have two server runtimes configured. Till today my thought was, I need a Wildfly 11 runtime when I connect with a Teiid 11 Server instance, and a Wildfly 9 Runtime when I connect to Teiid 9 server instance. When using Wildfly 11 runtime to do an "Import from Teiid connection" I get the following error message:

       

      Well, this perfectly fits to the description on the Teiid community homepage and supported my previous thinking.

       

      However, what also seems to be possible, is to use the Wildfly 9 Runtime against the Wildfly 11 Server. "Import from Teiid connection" seems to work for me as far as I can see, and I can also deploy the build vdb to the Wildfly server.

       

      Now my question arising here is, was it just  luck that these things were working and doing different things with Teiid Designer will have to be expected to fail in different places?

      Or is my understanding about the configured Wildfly 9 Runtime option wrong, and this configuration option is indeed only thought to tell Teiid Designer for which server runtime version a  vdb has to be generated. Hence, the runtime configuration set here is independent of the Wildfly Server which is running in the background?

      The later case would be great, as this would mean, it is save to just work with the Wildfly 11 server, in the development and in the production environment and just configure a Wildfly 9 runtime in Teiid-Designer to generate the vdb's. So please let me know which of the two assumptions is right, or if there even might be a third one, I am not aware of yet

        • 1. Re: Which Version of Teiid Wildfly to use with Teiid Designer / or how to correctly configure the Eclipse environment
          cjohn001

          Ok, the world unfortunately seems not to be that easy. I am not sure, why the import was working for the first time. In subsequent trials the import always generates errors when trying to resolve the foreign keys in the tables

           

          This brings me to a two different questions.

           

          1. Will there in the future be support in Teiid Designer for a more recent version of Teiid-Wildfly?  Having this workaround of two installations seems to be  suboptimal.

          2. I now switched back from my experiments with Teiid 11.2 to Teiid 9. I now have the same issue when using Teiid 11.2. The tables are correctly important when using Import from a Teiid connection, but the foreign keys of the tables are not resolved. I have seen this issue quite often in the past. My question here is why? Is there any information cached by Eclipse that Teiid is reusing. Hence, anything I should delete by hand to get things back running?

          • 2. Re: Which Version of Teiid Wildfly to use with Teiid Designer / or how to correctly configure the Eclipse environment
            shawkins

            > Will there in the future be support in Teiid Designer for a more recent version of Teiid-Wildfly?  Having this workaround of two installations seems to be  suboptimal.

             

            It is not likely.  The UI effort is now towards the cloud tooling.

             

            > I now switched back from my experiments with Teiid 11.2 to Teiid 9. I now have the same issue when using Teiid 11.2. The tables are correctly important when using Import from a Teiid connection, but the foreign keys of the tables are not resolved. I have seen this issue quite often in the past. My question here is why? Is there any information cached by Eclipse that Teiid is reusing. Hence, anything I should delete by hand to get things back running?

             

            If you are using the Teiid connection importer you the metadata should be valid as far as Teiid is concerned.  Is the problem a validation error in eclipse, or a runtime error in Teiid?

             

            • 3. Re: Which Version of Teiid Wildfly to use with Teiid Designer / or how to correctly configure the Eclipse environment
              cjohn001

              Hello Steven,

              thanks for the reply. I cannot easily answer that question, as I am not using 11.2 for exports since a while anymore. I just made some tries and cannot replicate the behaviour. However, I did quite a couple of changes on my database in the meantime, and the failing of the export was something which was not repeatable everytime. If it normally should work, what are the limitation than between usage of version 11 and version 9 with teiid designer?

              I mean, if there is nothing which should systematically break my development environment I would switch to 11 and report on the bug once I see it again. However, I do not want to go that route if I break things in my project in different places.

               

               

              Update: Steve I can remember that the problem was definitely not a runtime error in Teiid. When I imported the database, the imported source xmi had the foreign keys between the tables not included. This could be seen in the Model Editor and the diagram editor view. As due to Barry's explanation it is not save to take 11.2 for vdb creation anyway, I will not try to track down the issue further. This would be of no help, as we could not recommend other users to switch to a newer version of Teiid for vdb creation anyway.

              • 4. Re: Which Version of Teiid Wildfly to use with Teiid Designer / or how to correctly configure the Eclipse environment
                blafond

                Teiid Designer is limited to designing/editing VDB's compatible with Teiid 9.0. The compatibility refers to Teiid 9.0 supported VDB content, associated properties and various datatypes.  In theory any Designer 11.x using Teiid 9.x server should provide valid VDBs that will be deployable on Teiid 10+ as well.

                 

                In follow on Teiid versions, the runtime has enhanced/added additional VDB-related features/properties as well as expanded datatypes for relational columns.  If Designer 11.x is working with a newer Teiid runtime, there may be cases where some properties are being imported that Teiid Designer may ignore or errors may occur. In particular Relational extensions properties were added after Teiid 9.x that could be loaded into Designer's Model Extensions registry. If this happens, be aware that any models where these properties are applied, will be ignored by Teiid 9.x server.

                 

                Barry

                1 of 1 people found this helpful
                • 5. Re: Which Version of Teiid Wildfly to use with Teiid Designer / or how to correctly configure the Eclipse environment
                  cjohn001

                  Hello Berry, thanks for the info. So this means, using Designer 11.x with a Teiid 11.2 instance is not save and might result in corrupted vdb's even if only used for Teiid 11.2. In this case I will better stay with Teiid 9.x for vdb creation and than deploy those on Teiid 11.2.

                  • 6. Re: Which Version of Teiid Wildfly to use with Teiid Designer / or how to correctly configure the Eclipse environment
                    blafond

                    That would be the safe set-up.