Question

bug in group mode ?


Badge

Hi folks,

I don't know if it's a "new" bug.

when I configure a reader DWG in grouped mode (single merge feature type) but not directly when creating the reader, but afterwhile, in the parameters of one of the faeatures :

The number of entities increases anormally ... and do never represent the real number of entities presents in the layer.

For exemple, I have 3000 entities (block) in a layer.

If I check the box "merge feature type" it increases to 20000 without reason.

I am surprised because I used this function a lot of times, without any problem.

Does anyone know if there is a problem known about it ?

Or maybe I do the bad manipulation

Regards


11 replies

Userlevel 5
Badge +25

When you set that merge filter all features from all feature types (i.e. layers) matching that filter will be routed through that feature type. If you set it to * you're basically asking FME to send all features in the file through that feature type.

Can you confirm whether or not the number of features reported is the total number of features in the file?

Badge

In fact I have to modify my observation.

The "bad or bug" behiavour happens only if all the features are not loaded.

If all feature are loaded, the "old" behaviour is still the same, that means that the counter of features indicated on the connector that "holds" the merge option is the good.

to be complete, when all the features all not loaded, and the merge option activated, the counter indicates not quite the full number of features ... in my case the file has 20830 features and the number indicated in grouped mode is 20017.

I hope my explainations are sufficiently clear

regards

Userlevel 5
Badge +25

In fact I have to modify my observation.

The "bad or bug" behiavour happens only if all the features are not loaded.

If all feature are loaded, the "old" behaviour is still the same, that means that the counter of features indicated on the connector that "holds" the merge option is the good.

to be complete, when all the features all not loaded, and the merge option activated, the counter indicates not quite the full number of features ... in my case the file has 20830 features and the number indicated in grouped mode is 20017.

I hope my explainations are sufficiently clear

regards

Maybe I should have been clearer: all features that are being read are coming through that feature type if you have the merge filter set to *, so if you're excluding certain layers then yes, I would expect that number to be lower than the total number of features in the file.

The thing I'm trying to say is: when you set that merge filter it's not just reading from that layer, but from all other layers it can get acces to as well.

Badge

Well it's quite complicate to explain

1. first case, i read all the feature in a merged mode, set in the reader. So all features are seen in <All> way, and the total number of features is 20830.

2. second case, i read all the features in individal mode, i check the bow "merge mode" in one feature, every feature is seen as itself, and the total number of features is also 20830

3. third case, i don't read all the features in individal mode, i check the box "merge mode" in one feature, every feature is seen as itself, and the total number of features is 20017 .... but the total number do not match with the total number of elements of all the features I loaded, that is 3800.

As I described the problem before, it seems to me that there is bug when the loading of features is partial.

So I have to care about it.

regards

Userlevel 5
Badge +25

Well it's quite complicate to explain

1. first case, i read all the feature in a merged mode, set in the reader. So all features are seen in <All> way, and the total number of features is 20830.

2. second case, i read all the features in individal mode, i check the bow "merge mode" in one feature, every feature is seen as itself, and the total number of features is also 20830

3. third case, i don't read all the features in individal mode, i check the box "merge mode" in one feature, every feature is seen as itself, and the total number of features is 20017 .... but the total number do not match with the total number of elements of all the features I loaded, that is 3800.

As I described the problem before, it seems to me that there is bug when the loading of features is partial.

So I have to care about it.

regards

Okay, that does sound as something to be concerned about. What version (build number) of FME is this happening in and is it only this file or also others?

Badge

I was it in FME 2018, nuild 18578, but have the same problem with FME 2019 and 2020.

and with different files.

regards

Userlevel 5
Badge +25

I was it in FME 2018, nuild 18578, but have the same problem with FME 2019 and 2020.

and with different files.

regards

If you're sure you've got them set up the same with the exception of that merge option I would recommend you send them in to Safe's support (or your VAR) so they can take a look at it.

Badge
Hi, I sent a mail to safe support today. Regards
Userlevel 4
Badge +25

Hi Pascal,

So I took a look at the support case and grabbed a copy of the data to try it out. I honestly don't think that there is a problem.

Let's take a look at your examples:

1. first case, i read all the feature in a merged mode, set in the reader. So all features are seen in <All> way, and the total number of features is 20830. 

Yes, that's correct. You have one feature type that reads all of the 20830 features from the file.

2. second case, i read all the features in individal mode, i check the bow "merge mode" in one feature, every feature is seen as itself, and  the total number of features is also 20830 

This is also correct. You have a feature type per layer and set Merge Mode in one feature type. Merge Mode doesn't really matter here, because every layer has a feature type anyway. So every layer goes through its own feature type.

3. third case, i don't read all the features in individal mode, i check the box "merge mode" in one feature, every feature is seen as itself, and  the total number of features is 20017 .... but the total number do not match with the total number of elements of all the features I loaded, that is 3800. 

I think this is correct too. You have just a few feature types. If you read the data now, then only 3828 features can pass, because there is nowhere for the other layers to go. If you look in the log you will see lines like:

AutoCAD Reader: Features for feature type 'R-AEP_BLOC' will be skipped based on the feature types requested

So R-AEP-BLOC does not exist in the workspace and there is no other way for it to join with the rest of the data.

But when you set Merge Mode in one feature, you open a way for all the other features to enter the workspace. R-AEP-BLOC can now enter through <All>.

So 813 features come through their own feature types. 3015 features from the R-EU_BLOC layer come through the <All> feature type. But the other 17002 features in the dataset, can now also come through the <All> feature type.

You can think of feature types as a door to the workspace. If you set a Merge Mode to * then you are giving a key to every feature in the dataset, not just the features in the layers on the canvas.

If you truly don't want those features to be read, then you can set the parameter Feature Types to Read:

0684Q00000ArLw9QAF.png

Now a layer is only read if it is in the list. If it is not in the list, it will be ignored. If it is in the list, but there is no feature type for it on the canvas, it will pass through the Merged <All> type, if there is one.

I hope this helps to clarify. 

If you would like me to explain more, is it OK if I post more screenshots? I didn't want to post much more than you had shown, in case the data is private.

Badge

Hi Pascal,

So I took a look at the support case and grabbed a copy of the data to try it out. I honestly don't think that there is a problem.

Let's take a look at your examples:

1. first case, i read all the feature in a merged mode, set in the reader. So all features are seen in <All> way, and the total number of features is 20830. 

Yes, that's correct. You have one feature type that reads all of the 20830 features from the file.

2. second case, i read all the features in individal mode, i check the bow "merge mode" in one feature, every feature is seen as itself, and  the total number of features is also 20830 

This is also correct. You have a feature type per layer and set Merge Mode in one feature type. Merge Mode doesn't really matter here, because every layer has a feature type anyway. So every layer goes through its own feature type.

3. third case, i don't read all the features in individal mode, i check the box "merge mode" in one feature, every feature is seen as itself, and  the total number of features is 20017 .... but the total number do not match with the total number of elements of all the features I loaded, that is 3800. 

I think this is correct too. You have just a few feature types. If you read the data now, then only 3828 features can pass, because there is nowhere for the other layers to go. If you look in the log you will see lines like:

AutoCAD Reader: Features for feature type 'R-AEP_BLOC' will be skipped based on the feature types requested

So R-AEP-BLOC does not exist in the workspace and there is no other way for it to join with the rest of the data.

But when you set Merge Mode in one feature, you open a way for all the other features to enter the workspace. R-AEP-BLOC can now enter through <All>.

So 813 features come through their own feature types. 3015 features from the R-EU_BLOC layer come through the <All> feature type. But the other 17002 features in the dataset, can now also come through the <All> feature type.

You can think of feature types as a door to the workspace. If you set a Merge Mode to * then you are giving a key to every feature in the dataset, not just the features in the layers on the canvas.

If you truly don't want those features to be read, then you can set the parameter Feature Types to Read:

0684Q00000ArLw9QAF.png

Now a layer is only read if it is in the list. If it is not in the list, it will be ignored. If it is in the list, but there is no feature type for it on the canvas, it will pass through the Merged <All> type, if there is one.

I hope this helps to clarify. 

If you would like me to explain more, is it OK if I post more screenshots? I didn't want to post much more than you had shown, in case the data is private.

Hi Mark 

ok thanx a lot for these explainations, great !

regards

Badge

Hi Pascal,

So I took a look at the support case and grabbed a copy of the data to try it out. I honestly don't think that there is a problem.

Let's take a look at your examples:

1. first case, i read all the feature in a merged mode, set in the reader. So all features are seen in <All> way, and the total number of features is 20830. 

Yes, that's correct. You have one feature type that reads all of the 20830 features from the file.

2. second case, i read all the features in individal mode, i check the bow "merge mode" in one feature, every feature is seen as itself, and  the total number of features is also 20830 

This is also correct. You have a feature type per layer and set Merge Mode in one feature type. Merge Mode doesn't really matter here, because every layer has a feature type anyway. So every layer goes through its own feature type.

3. third case, i don't read all the features in individal mode, i check the box "merge mode" in one feature, every feature is seen as itself, and  the total number of features is 20017 .... but the total number do not match with the total number of elements of all the features I loaded, that is 3800. 

I think this is correct too. You have just a few feature types. If you read the data now, then only 3828 features can pass, because there is nowhere for the other layers to go. If you look in the log you will see lines like:

AutoCAD Reader: Features for feature type 'R-AEP_BLOC' will be skipped based on the feature types requested

So R-AEP-BLOC does not exist in the workspace and there is no other way for it to join with the rest of the data.

But when you set Merge Mode in one feature, you open a way for all the other features to enter the workspace. R-AEP-BLOC can now enter through <All>.

So 813 features come through their own feature types. 3015 features from the R-EU_BLOC layer come through the <All> feature type. But the other 17002 features in the dataset, can now also come through the <All> feature type.

You can think of feature types as a door to the workspace. If you set a Merge Mode to * then you are giving a key to every feature in the dataset, not just the features in the layers on the canvas.

If you truly don't want those features to be read, then you can set the parameter Feature Types to Read:

0684Q00000ArLw9QAF.png

Now a layer is only read if it is in the list. If it is not in the list, it will be ignored. If it is in the list, but there is no feature type for it on the canvas, it will pass through the Merged <All> type, if there is one.

I hope this helps to clarify. 

If you would like me to explain more, is it OK if I post more screenshots? I didn't want to post much more than you had shown, in case the data is private.

HiMark,

 thanks for explainations, I agree

regards

Reply