Vocabulary Mapping doesn't work
Roland Tanglao@... - August 16, 2006 - 16:00
| Project: | Subscribe |
| Version: | 4.7.x-1.x-dev |
| Component: | Code |
| Category: | bug report |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | postponed (maintainer needs more info) |
Description
1. I created a Vocabulary called TestVocab on two sites with identical terms.
2. I successfully subscribed from test1 to test2 and set Vocabulary Mapping to map from TestVocab to TestVocab
3. Nodes successfully come over but the terms don't come over. i.e. node 1 set to TestVocab term1 on publish machine comes over successfully but it doesn't have term1 TestVocab set

#1
This was a bug in the filtering mechanism in publish.module. Fixed.
#2
Just tested it this morning and it still isn't working. i.e. the node comes over and even though the Vocabularies are identically named with identically named terms, the term is not transferred.
#3
I've refactored vocabulary importing. Use the 4.7 version as cvs is not yet up-to-date.
#4
I too was experiencing this problem. During the subscription I was prompted to map the vocabulary to the specified category, however there was no vocab set in the node on the subscribed site after doing the initial pull. The same was true after an edit of the publishing node.
As discussed yesterday, I am using the following version of the module for 4.7, 1.21.2.5
The following uses specific examples with my database info...
Looking at the database, on the publishing server it has the publish_vocab_map table correct with the local_vid with a value of 2 which is the correct vocab id in my case, and the remote_vid with a value of 1 (again correct)
However on the subscribing database, it lists the subscribe_vocab_map table with local_vid as 2 and remote_vid as 1. However that is incorrect, from the subscribing servers point of view. So I manually reversed them, and did a pull of the nodes again and the nodes now do have the correct category listed, and do list properly when looking at www.mydomain.com/product/term/1
My guess is in your testing the vocabs both had the same id so when they were reversed it did not make a difference...
Hope this helps.
Darren
#5
This is still not working. John I've started to work on subscribe.module and it looks like there is still some bugs in there, especially with vocab mapping. Why are you using $_SESSION to store form values instead of going through the normal FAPI routes? I'm trying to clean up the forms and need to understand a bit about XML-RPC, can we only subscribe once with push? Afterwards we can't update vocab mappings, etc.?
If you have 5 minutes I would greatly appreciate a quick primer so we can get this thing cleaned up! Thanks. :)
AIM: Robertitoe
Skype: SchoolEngine
IRC: RobRoy
#6
Regarding using $_SESSION, no special reason -- this module predates FAPI solutions for multistep forms.
Vocabulary mapping is only done once. Again, no special reason for this. The issue is that if you change vocabulary settings on either side (e.g. change hierarchy or node type associations), you should sync vocabulary settings, and I wanted to just start simple.
So the road is open for patches that update the FAPI code and enhance vocabulary syncing.
#7
Cool, I got vocab mapping going and put everything on one form for consistency. Now when you update settings it cancels the subscription and re-subscribes. I left it like this since I didn't want to mess with the XML-RPC site of "updating" a subscription, but that would probably be nicer. Here is something so you can give me any direction. It was working last I checked, but could be borked a bit.
RFC on the patch. Thanks.
P.S. I may be doing some more work to try and get file attachments to come over and a few other things. Any direction from you is appreciated.
#8
Happy New Year!
Using the latest November 13, 2006 4.7 publish and subscribe software from CVS WITHOUT RobRoy's patches, vocabulary mapping now works
Sounds like RobRoy's patch is needed when vocabulary changes AFTER initial mapping. When will RobRoy's patch be in 4.7 version? RobRoy's patch is not urgent for me because my vocabulary isn't changing, so I am just asking because I am curious!