18 Segmentation v1.8.1

I’ve just got

18 Segmentation fault python -m prodigy earnings_tag_mark -F annotator/recipes.py

Any ideas?

Thanks for the report – but this is super difficult to debug without more details. What code are you running? What’s your recipe doing? Can you narrow it down to specific examples, or (since this is very likely happening in spaCy), reproduce it with a spaCy script?

Yeah I know its difficult.

The thing is that it was working yesterday but today this happened (no changes - it is deployed dockerized version).

It is a very simple recipe with no spaCy in the loop.

@prodigy.recipe('earnings_tag_mark',
                label=prodigy.recipe_args['label_set'])
def earnings_tag_mark(label='earnings'):
    """Mark exchange statements for companies of interest of interest"""

    stream = (
        prodigy.set_hashes({
            'body': es.body,
            'title': es.title,
            'meta': {
                'id': es.id,
                'source_id': es.source.id,
            }
        }) for es in exchange_statements
    )

    components = generic.mark(
        dataset='earnings-mark',
        source=filter_duplicates(stream),
        view_id='html',
        memorize=True,
        label=label
    )

    components.update(
        view_id='html',
        config=dict(
            html_template='<p><strong>Title</strong>: {{ title }}</p><br><br><p>{{{ body }}}</p>',
        )
    )

    return components

Is it possible to add some verbosity?

I still have this issue. It works if I run my dockerized app locally but when I deploy on Google Cloud App Engine Flex environment then I get the error.

The recipe gets loaded just fine but what happens afterwards in prodigy?

I 'm guessing it is related to something in server function but its really hard to debug

def serve(recipe_name, *args, **config):
    loaded_recipe = get_recipe(recipe_name)
    if loaded_recipe:
        controller = loaded_recipe(*args)
        controller.config.update(config)
        server(controller, controller.config)
    else:
        raise ValueError("Can't find recipe {}.".format(recipe_name))

Could it be running out of memory? I don’t know what the limits are for Google Cloud App Engine Flex, but maybe that’s an issue?

It’s definitely interesting that this comes up with no spaCy involved. I wonder what could be happening, because there’s no much C-level code being activated. Possibly something in Falcon, the web server framework?