I use media mover to convert my video into small thumbnail, large thumbnail, and FLV video. I created configurations to do these jobs in following order :
1. Convert to FLV, then save the file into file field
2. Create large thumbnail, then save the file into file field
3. Create small thumbnail, then save the file into file field
Everything is okay when I tried to run these configurations manually, one by one. All files were saved in file fields. But, problem occurs when I ran cron. Media mover converts my video into FLV, large thumbnail, and small thumbnail, BUT not all files saved in file fields. Only last configuration (number 3) successfully saved the file into file field. The other two configurations fail when saving files into file fields.
I tried to add another configuration. And there was only the last configuration successfully saved file into file field when i ran cron. I can't figured out why this is happen.
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | conf-1.txt | 2.84 KB | gantenx |
| #3 | conf-2.txt | 2.28 KB | gantenx |
| #3 | conf-3.txt | 2.4 KB | gantenx |
| #3 | conf-5.txt | 1.84 KB | gantenx |
Comments
Comment #1
arthurf commentedHi-
Can you provide me with your configurations (use the export function) so I can check out what is going on?
Comment #2
arthurf commentedComment #3
gantenx commentedHere they are. :-)
Comment #4
mark trappHello,
I'm having a similar issue. I have a filefield that's harvested for several configurations. Each configuration harvests the filefield, then processes the data via mm_custom_command, then stores the file via S3, then takes the URL from S3 and stores that into a textfield. Each configuration has its own textfield.
When I run each configuration manually, there are no issues: everything works as expected (all textfields are set correctly). When I use cron, however, only the last configuration's textfield is set.
My configurations take some time to complete, so I've been able to watch what happens to an affected node. When the first configuration completes, it populates the first textfield correctly. When the second configuration completes, the changes to the first textfield are removed and the second textfield gets set correctly. With each subsequent configuration, the previous textfield is unset while the current textfield is set correctly.
Is it possible that the configurations are rewriting the node based on the way the node looked at the start of the cron job? So, since configuration 1 changed the node, configuration 2 has no idea about the changes and works with the unaltered node, thus removing all the changes configuration 1 did?
I can confirm that the only portion that breaks is the storing into the CCK field at the end: harvesting works, processing works, and storing it to S3 works (the files are still on my S3 bucket), but the CCK field just gets unset.
Comment #5
mark trappComment #6
mark trappI also have the exported configuration here. All configurations I'm using are identical, with changes to the custom command, output file name (I'm changing the extension), and the CCK field at the end (They're all file_image_asset_*, and they're all CCK textfields). Is there any other information I could supply to facilitate resolving this? Right now, it's a show stopper for me.
Comment #7
highfellow commentedI'm having the same issue. When I try to run 2 configurations at once (convert to flv and convert to thumbnail), the flv file fails to attach to the cck field. This is the first of the two configurations. When I disable the thumbnail configuration, the flv one runs ok.
Comment #8
szczym commentedim having similar issue, reported all ready month ago at #486206: Files transcoded but not added to filefiled
Comment #9
rusirius commentedI too am having the exact same problem... I was pulling my hair out trying to figure out what was going on... Once I did a came here and found this. I can't really add anything that hasn't already been said, but I've tried both the stable and development release and both produce the exact same results... Just as Mark said, each time a config is ran, it replaces the node with just ITS information... In other words, I could have 50 different configurations all doing something different... Even though each one fires off in order during a cron run (or autorun for that matter), it's like they ALL take a "snapshot" of the node at the beginning... Each time one completes it overwrites the node with the "snapshot" and it's information, overwriting the previous info...
I suppose it also bears mentioning that this seems to have to do with the CCK portion. I'm harvesting from a CCK field and storing back into a different CCK field. One config is generating thumbnail and storing into a thumbnail filefield while the other config is generating a flash preview video and storing back to a preview filefield.
Comment #10
zaczek commentedI think I might have a solution.
I have modified the function content_write_record in the CCK module (content.module) as follows (line 1198):
The issue is with UPDATE queries for CCK content types. When the content_write_record function is invoked and some values are not provided, the function updates the record with the default values (i.e. NULL). Since we want the update to preserve existing values, we should skip those fields in the update statement.
This has solved the problem on my test site, but I haven't tested it thoroughly.
Maybe there are some situations when the UPDATE statement should update fields to their default values instead of just keeping existing values? Let me know.
The patch is available here: http://drupal.org/node/486206#comment-1937390
Cheers,
Jakub Gawlikowski
Comment #11
szczym commentedpatch from here: http://drupal.org/node/486206#comment-1937390
temporary solves the problem
Comment #12
zaczek commentedI have made a better patch that doesn't modify CCK and only makes changes to the media_mover_api.module
http://drupal.org/node/486206#comment-1942328
Cheers,
Jakub
Comment #13
arthurf commentedI'm closing this to direct people over to this thread here: http://drupal.org/node/368956
I hope this will keep everybody on the same page!