Remus Avram

Members
  • Content Count

    486
  • Joined

  • Last visited

  • Days Won

    12

Everything posted by Remus Avram

  1. The new documentation also doesn't have a content on the left side.
  2. Hi guys, there is no event emitted when I create / update / remove an entity type TypedContextLink. Best, Remus
  3. Can you please add me, too my email address is: remus.avram20@gmail.com
  4. Ok. This is not really recommended. There could be jobs on the farm writing there, or you have some hardcoded paths somewhere in the metadata, etc.
  5. What do you mean? Automatic renaming? like if you rename something in Ftrack, it should be renamed also on the filesystem?
  6. It still missing in version 3.5.20. Any plans to add it back?
  7. Hi @ewokninja the time zone in the DB should be recorded in UTC timezone. The Ftrack web interface should detect the time zone set on the machine and convert the date/time fields to the respective timezone. Or do you need the timezone on any date/time field for something else?
  8. Thanks for the info! We will try to test this, too.
  9. We already requested this. It makes sens for us as using multiple session it means creating multiple cache files which increase the number of queries to the DB.
  10. We tried multiple ways. It will not work. If you are using multi threads, use multiple session.
  11. It would be great if there would be an attribute "send_notification" type boolean on the asset version type. True - send notification False - don't send notification
  12. Thanks @tokejepsen for the info. I was thinking that it's something related to the notifications. So if it's set to false, then it will not send a notification.
  13. Hi all, is there a way to not send notifications for a asset version when it's published? For example I don't want to send every time a new notification when a work file is published. I want to send notifications only when a real publish is done and needs to be added for review. Best, Remus
  14. Hi all, I looked into the documentation, but I didn't find anything related to the "is_publish" attribute of an AssetVersion. Does anybody know if it's used for something specific? Best, Remus
  15. I think not specifying the version number when you create the assetVersion it's the best way. In this way it's automatically creating the next version.
  16. Hi @Mattias Lagergren the offline documentation was awesome for the production and artists as they could find it easily. Unfortunately, our users don't have direct internet connection and they can not easily access it. Another think is that we are not migrating to the latest version all the time. Especially when we are close to a show deadline. In this way, if there are new features which production is interested in, but they are not in the Ftrack version used in production, then it could create confusion.
  17. Thanks @Martin Pengelly-Phillips for your info. I am interested how others studios are using the `ftrack_api`.
  18. Thanks @Mattias Lagergren! For the moment the work around works. It's just that would be cool to have it fixed.
  19. Thanks @Martin Pengelly-Phillips for the info! So as I understand the cache is build per session. If there is a session per thread, then for each thread there is a cache file which can contain the same data as the other sessions. Am I correct? Having only one session, there is only one cache file with all the data and the queries are faster. Less queries to the database. Do you know if the sessions connected? I did a test and it seems that they are. I query in assetBuild in one session and I created a task using as parent the assetbuild from the other session and the task was created. @Martin Pengelly-Phillips: I am interested how are you using the session. Are you creating a new session for each query / commit?
  20. Hi @Lucas Correia, is it possible to change the behaviour too allow creating version 0 without changing it after the version was created? We need to patch it everywhere we create a new versions.
  21. Thanks @Mattias Lagergren for your answer! For us it's quite important because we are planing to use threads in all of our tools. We would like to use at least 1 thread in order to not freeze the UI while it is fetching the data. You mean something like this: from multiprocessing.dummy import Pool as ThreadPool import ftrack_api from ftrack_api.symbol import Symbol session = ftrack_api.Session() def check_keys(entity): for key in entity.keys(): if isinstance(entity[key], Symbol): print entity, ': ', key def check_children(entity_id): entity = session.get('TypedContext', entity_id) if 'children' in entity.keys(): for child in entity['children']: check_keys(entity=child) check_children(entity_id=child['id']) def main(): projects = session.query("Project").all() projects_id = [project["id"] for project in projects] pool = ThreadPool() pool.map(check_children, projects_id) if __name__ == "__main__": main() It still doesn't work. In the thread most of the time session.get('TypedContext', entity_id) returns None.
  22. Hi Mattias, ahh... are you going to make it thread safe? The problem is that if it is not specified when the session is created to not auto-populate, then it should never return a Symbol (NOT SET) value. Creating a session per thread works as expected. But it doesn't help us as the sessions are not connected.
  23. Hi Ftrack Team, we would like to use the ftrack session in threads, but, unfortunately, it seems that ftrack_api is not thread safe. When we are using the session in multiple threads the return of the attribute value of the entities is a Symbol (NOT SET). Please find below a script where we were able to reproduce the issue: from multiprocessing.dummy import Pool as ThreadPool import ftrack_api from ftrack_api.symbol import Symbol session = ftrack_api.Session() def check_keys(entity): for key in entity.keys(): if isinstance(entity[key], Symbol): print entity, ': ', key def check_children(entity): if 'children' in entity.keys(): for child in entity['children']: check_keys(entity=child) check_children(entity=child) def main(): projects = session.query("Project").all() pool = ThreadPool() pool.map(check_children, projects) if __name__ == "__main__": main() ftrack_api version: 1.3.2 ftrack server version: 3.5.6